3 ms·
Wow, that is just 357 lines of Go code. So much of my work life is using complex systems in AWS and GCP that are beyond my ability to understand “turtles all th
by mark_l_watson 5y ago
Wow, that is just 357 lines of Go code. So much of my work life is using complex systems in AWS and GCP that are beyond my ability to understand “turtles all the way down.” It is refreshing to see something so simple and focused on one thing. In the early days of Ruby on Rails, I had the source code to Ruby and for Ruby on Rails on my laptop and it was all fairly readable. Those days are long gone.
- skybrian 5y agoThe trick seems to be that all the complexity is in the html file and runs in the browser. The server is just a basic WebDAV server. It looks like the entire wiki implementation is copied to a new file when you create a new wiki page. It's a 2.3 MB file, which seems like a lot to download when you visit a new page.
- mch82 5y agoEach HTML file is a complete wiki instance. The wiki code and data for all pages within the wiki are bundled in that file. The code let’s the webpage edit itself.
- dTal 5y agoI don't get it. Why is it making me compile a Go webserver then? There aren't even binaries provided.
- detaro 5y agoSo you can save the modified file on the server.
- Abishek_Muthian 5y ago> It's a 2.3 MB file, which seems like a lot to download when you visit a new page. It is, But I feel it's still better than what ever framework they're using nowadays to generate doc/wiki for APIs which hijacks Ctrl-F with a useless pop-up which rarely gets me what I need[1]. Please bring back plain HTML document pages. [1] https://stripe.com/docs/api https://stripe.com/docs/api
- fartcannon 5y agoLike using the command line, its all so flexible, dynamic and powerful while being small and understandable. It was possibly my favourite part of learning to use Linux 20 years ago.
- orf 5y agoDoes that LOC count include dependencies?
- monsieurbanana 5y agoIf you want to make something from scratch, you must first invent the universe. Anyway, I wouldn't count the kind of simple, focused libraries dependencies Widdler relies on as additional LOC. As a rule of thumb, if it's something that wouldn't make me blink an eye if I found it was in the python stdlib, it gets a pass from me. Only the webdav library might not fit this. This is subjective, of course. If anyone has a better heuristic for this, I'm all ears.
- branko_d 5y ago“If you wish to make an apple pie from scratch, you must first invent the universe” - Carl Sagan.
- kenniskrag 5y agoThere are only native packages + 1 external packages suah.dev/protect.
- IceWreck 5y agoLooks like the package in question only has packages from the Go project itself. The only external dependency is OpenBSD specific and used on that operating system only.
- hwers 5y agoIt's a weird phenomenon though since even though ruby on rails was readible in a small code base, it was still building on top of a ton of abstractions that hid lower detail. It makes me think that we're just failing to build clean good abstractions that make coding for cloud as beautiful as it could be.
- halfdan 5y agoThe difference between Rails and AWS however is that you can inspect the former and understand all its underpinnings whereas AWS is almost entirely proprietary and your experience with their services entirely depends on what services you select.
- lanstin 5y agoi keep the code for CPython, Go, terraform and the terraform providers i use checked out. It is still useful and educational to read source code. i confess i only rarely check out the kernel or glibc code. kernel code is good but usually not the issue glibc has the tendency to make me mad.
- evilDagmar 5y agoThat really seems like a lot of code just to do the job of cp. Perhaps their time would be better spent thinking up some way to prevent a TiddlyWiki from becoming a wormable nightmare.
- the_qbit 5y agoNa, cp doesn’t cut it :p - if it was that trivial of a task I wouldn’t have taken the time to write it! Thanks for your opinion on where my time is better spent though, I don’t know what I was thinking.. building a tool to solve a problem I had and releasing it completely free of charge! I’ll know better next time!