26 ms·
Build Your Own X
- yosefzeev 7y agoVery neat link. It is true that if you cannot create it, you are simply borrowing someone else's idea and treating it like your own.
- yjftsjthsd-h 7y ago> if you cannot create it, you are simply borrowing someone else's idea and treating it like your own. With the understanding, of course, that this isn't necessarily a bad thing! Understanding is certainly useful, but if it works, then it works, regardless of who built it. Reimplementing, say, a standard library will make you a better programmer, but if just including libraries to do the heavy lifting produces a working system, then that has value too. There are only so many hour in the day; there's value in knowing when to just hand-wave the giants whose shoulders you stand on.
- sebastianconcpt 7y agoReally nice. I was hoping to find some Smalltalk examples
- ceres 7y agoIs it just me or does all these great educational content out there lead to analysis paralysis? I mean if I wanted to just learn something new and I chanced upon this web page I'd be stumped on where to start.
- deleted 7y ago[deleted]
- a-priori 7y agoPick the one that seems most mysterious and scary.
- gbear605 7y agoAlternatively, pick the one that seems just a bit too mysterious and scary to be able to do yourself.
- jplayer01 7y agoI agree. I’d pay for a "course" that assembled a massive list of practical learning projects like this into something that plots real skill/knowledge growth from beginner to advanced in a structured way.
- amadeuspagel 7y agoMaybe you're interested in a platform I've built for this kind of thing - https://readpaths.com https://readpaths.com. It lets people collaborate to build something like what you describe. People can add links and other people can add connections between these links, resulting in a dependency graph.
- Blackthorn 7y agoIt hasn't for me. If I didn't have any direction, sure. But if there's something I actually want to learn, it's easy to find a good source and then hold my nose to the grindstone.
- basq 7y agoI've worked through a couple of these lists and a few of the projects. My take on them is that many of the tutorials are not vetted for quality or even completeness. I have several projects where the author of the guide essentially 'gives up' 60-80% of the way through, usually in the most difficult stage of the process, in what can be described as a 'rest of the fkn owl' result. Also as someone who easily succumbs to analysis paralysis, this has made it quite difficult to motivate myself to start another one.
- commandlinefan 7y agoI was expecting build your own XWindows Server.
- lunixbochs 7y agoI was doing this and gave up shortly after realizing the network protocol supports endian negotiation and also some messages are still arbitrary endian
- svd4anything 7y agoSame here and I was thinking it would be a detailed guide to compiling from source.
- _def 7y agoI expected the same and was gladly surprised with this interesting collection. That being said, there's a link under "uncategorized" regarding the X window system :)
- emptybits 7y agoLikewise. I just listened to a BSD Now podcast on building the FreeBSD graphics stack.[1] They went into X and its history a bit so I had X on the brain. But this list from OP is even more interesting! That list is a wonderful (mine?)field of rabbit holes! Bookmarked and thank you. [1] https://www.bsdnow.tv/283 https://www.bsdnow.tv/283
- grawprog 7y agoWas also expecting this but was very pleasantly surprised at what was there. It's a pretty awesome list of intermediate to advanced programming projects covering a nice variety of things.
- arittr 7y agome too! i was ready for a dark, spooky, deep dive here....
- rmgraham 7y agoThis is a great resource. There were also some other useful links in the comments last time: https://news.ycombinator.com/item?id=17054419 https://news.ycombinator.com/item?id=17054419
- johnmorrison 7y agoDoes anybody know about something like this for hardware? Clocks, motors, stuff like that?
- hugs 7y agoFor industrial-type things, there's Open Source Ecology (https://www.opensourceecology.org/ https://www.opensourceecology.org/)
- theamk 7y agoThat is a weird website! For something that has "open source" in the title, it was remarkably hard to find the actual plans -- there are many blank and broken pages; even the info page for "CEB press" (which seems the first machine they did) is spread over 3 different websites and has many empty/broken pages. The only thing that is clear form the website is that they are happy to sell you workshops.
- agumonkey 7y agoyoutube has a few engineers and makers, far from precise but still inspiring
- xahrepap 7y agoDifferent than your examples. But I just finished making my own "Mostly Printed 3D Printer". I'm a software dev but had basically no experience with Arduino or anything else related to the project. It made me feel like when I was a kid on Christmas with a new large Lego set. One of the most educational and fulfilling projects I've done in recent memory. It was good timing too because the motherboard on my 3d printer just shorted out. I didn't want to pay the full price ($115) for a replacement board. So I bought an open source board similar to the one I used for my MPCNC. Since I had just put that togheter I knew what I was doing even though there was limited help in converting my particular printer available online.
- OJFord 7y agoDo you have a blog/YouTube channel or something with more details?
- agumonkey 7y agoI searched for Xwindow way too long
- wrboyce 7y agoThere is an X Window related post at the bottom of the page under Uncategorised.
- jadia 7y agoThis is some great content. Build you own X helps you understand the internals of X.
- kristianc 7y agoIs there really no option for build your own Dropbox? ;)
- bra-ket 7y agoFor a Linux user, you can build such a system yourself quite trivially by getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mounted filesystem. From Windows or Mac, this FTP account could be accessed through built-in software. https://news.ycombinator.com/item?id=8863 https://news.ycombinator.com/item?id=8863
- kristianc 7y agoI’m glad someone got the reference...
- zerr 7y agoWhat I find interesting that many think before dropbox the only other option was FTP, while in fact there were other cloud based storage providers with good integration on the desktop such as virtual disk drive on Windows, even in late 90s. Dropbox won with PR/marketing I believe. Can anyone list what differentiated them compared to exiting solutions, besides marketing?
- FR10 7y agoFrom what I have heard on "How to Draw a Startup" [0] Illustration was vital for Dropbox to differentiate themselves. [0] https://www.howtodrawastartup.show https://www.howtodrawastartup.show
- kristianc 7y agoEase of use, UX, network effects, positioning (the fact that it isn’t called Virtual Hard Disk) https://www.windowscentral.com/how-create-and-set-vhdx-or-vhd-windows-10 https://www.windowscentral.com/how-create-and-set-vhdx-or-vh... Even if you could get the above working yourself, good luck trying to get someone else to so you can collaborate on a project. Developers often dismiss ‘marketing’ as though it is just a fluffy icon or slick website, but how a product is positioned (in Dropbox case for ease of use and the fact that the project is engineered to ‘feel like a folder’) is absolutely marketing and critical to its success.
- punnerud 7y agoA good reading on why you should understand your building blocks: https://caseyhandmer.wordpress.com/2019/10/15/on-reasoning-backwards-from-architecture-to-implicit-requirements/ https://caseyhandmer.wordpress.com/2019/10/15/on-reasoning-b...
- nimvlaj30 7y agoI read your article, and it's about reasoning in regard to design requirements. I'm curious to hear what you have to say. Would you please provide some explanation as to why programmers should understand building blocks?
- kstenerud 7y agoVery cool! Does anyone know of something similar for a secure network stack, like a "build your own TLS" but very barebones?
- h_amg 7y agoThis is dope. thanks for sharing
- aredirect 7y agoshameless plug: practical/real world applications step by step https://github.com/xmonader/nimdays https://github.com/xmonader/nimdays
- sowbug 7y agoMostly off-topic: anyone know how to set the github.com cookie to never expire? All I want, usually, is to star a project. But all that gets me, usually, is a sign-in screen. And I never seem to have my U2F key handy.
- tambourine_man 7y agoGet a password manager?
- kikoreis 7y agoBut he mentioned 2FA?
- tambourine_man 7y agoAh yes, I see.
- capableweb 7y agoAdd the 2FA to your password manager! At least 1Password supports this. Although, you might not want to do this, depending on your threat model. Take care if you do (now both password + 2FA can be obtained by having your password manager compromised, but at least your protected if only your password leaks from some dump)
- sowbug 7y agoI don't use OTP 2FA if U2F is available. Adding a physical token to a password manager is not an option. Part of the problem is that GitHub is both a source code repository frontend (calling for tighter security) and a social network (calling for minimal security). So the cookie expiration policy makes sense for the former case but not the latter. A compromise might be letting the user mark a specific browser instance as trusted, so that the site can either set a longer expiration or else not ask for the second factor from that instance. Anyway, was hoping someone had figured out which cookie held GitHub's token and knew a browser extension that could extend its lifetime. Not really looking to learn about password managers, which I already use.
- tshanmu 7y agoIs there any pointers on how to write your own DNS server? Google does not seem to help much as it shows up mostly hosting your own bind server.
- nvr219 7y agothank u!!!
- cweagans 7y agoSee also: https://github.com/cweagans/awesome-diy-software https://github.com/cweagans/awesome-diy-software http://aosabook.org/en/index.html http://aosabook.org/en/index.html https://github.com/tuvtran/project-based-learning https://github.com/tuvtran/project-based-learning
- cognitoMagneto 7y agoIs there something like this for distributed services for computation? For example, I have a large computation job that I would like to split up across nodes?
- wolfpwner 7y agoAdding "Web Crawler" would be helpful
- ZeikJT 7y agoHappy to see nand2tetris on there, one of the most interesting projects I've done in a long time!