Hacker Newsnew | past | comments | ask | show | jobs | submit | more sahil-kang's commentslogin

If you’re interested in Common Lisp, Practical Common Lisp is a good overview of the language [1]. Since you’ve done game programming, here’s a simple snake game I wrote a while back; you might find it useful to peruse the code [2]. You can find a couple of bigger libraries I wrote on my github if you’re interested in seeing more substantial code.

[1] http://www.gigamonkeys.com/book/

[2] https://github.com/SahilKang/cl-snake


I just finished reading the OSTEP book[1] and it has a nice chapter on SSDs[2]. The entire last portion of the book is about filesystems/disks so you might find it interesting.

[1] http://pages.cs.wisc.edu/~remzi/OSTEP/

[2] http://pages.cs.wisc.edu/~remzi/OSTEP/file-ssd.pdf


That chapter on SSDs looks pretty good to me. Their numbers for NAND page and especially erase block sizes are very outdated; more modern values are 4kB to 16kB for NAND pages and 16-24MB for erase blocks on TLC NAND. Section 44.9 on mapping table sizes is a little bit odd, because most SSDs really do have 1GB of RAM per 1TB of flash, and that expense is widely seen as worthwhile even for multi-TB SSDs. The exceptions are low-end consumer SSDs that cache only part of the mapping table in a smaller amount of DRAM or SRAM, and a few enterprise/datacenter models that use 32kB block sizes for their FTL instead of the typical 4kB and thus reduce the DRAM requirement by a factor of 8 at the expense of greatly lowered performance and increased write amplification when writing in units smaller than 32kB.

Aside from the two above issues, everything looks correct and relevant, and I can't think of any missing details that deserve to be added to an introduction of that length.


> pages.cs.wisc.edu/~remzi/OSTEP

I see a maintenance page instead:

"Sorry! The URL you requested was not found on our server.

Is it Sunday between 4 and 8 PM (CST)? If so, the server may be undergoing regularly scheduled downtime. Otherwise, please contact the maintainer of the referring page and ask them to fix their link. Thanks!"

Here's a Jan, 2020 snapshot: https://web.archive.org/web/20200122013800/https://pages.cs....


Oh my god this book is amazing! Thank you


Can you share sources/data showing some of the fallout from covid-19 mitigation efforts?


Here’s one in Common Lisp if you’re interested in comparing loc with a lisp :) https://github.com/SahilKang/cl-snake


I would recommend contributing code to a well known FOSS project, or at least an existing project that you use or respect. I think hacking on meaningful projects will be clear milestones for yourself, which seems to be what you’re looking for.

To encourage you, here are a couple of contributions I have to Linux and Hadoop:

https://github.com/torvalds/linux/commit/0bef71093d446165964... https://github.com/apache/hadoop/pull/114

If you read through the commit messages and look at the patches, I think you’ll find that reaching these clear milestones doesn’t take an unattainable amount of skill; just a bit of patience and curiosity.


I haven’t used this myself, but Reason seems to fit your description of ‘learning any language’ while having static typing: https://reasonml.github.io

I’m more of a lisper, but OCaml should be a fun learning experience, especially if you enjoy expressive, static type-systems: https://ocaml.org


That’s an interesting opinion I’ve never heard before: suicide as an inalienable right. For clarity, you’re not referring to euthanasia by any chance, are you? If not, can you elaborate on why suicide is or should be an inalienable right?

From my understanding, people with mental health issues may be more likely to consider suicide. So my opinion is that suicide should be considered a symptom of an illness that needs medical attention as opposed to an inalienable right like free speech.


It's interesting to consider. I'm inclined to agree with b1r6 and would say that autonomy over one's life is only complete if you also have the right to end it.

That said, I do also agree that in some cases, not all, suicide is a symptom of an illness.

I think the way of reconciling these two positions is to make mental healthcare ubiquitous with low barriers to access - and help people to get in to care earlier before things escalate. Additionally, our national policies should seek to minimize the number of 'dead ends' in people's lives without opportunity to move forward or upward.


I do agree. If you cannot end your life, then you have to accept living under whatever terrible conditions that other peoples grudging charity will give you as you refuse to work or participate in society.


It sounds like we might work together; the only difference is that I do most of my dev work on my MBP so I consider it an expensive Linux machine instead of a chromebook :)


Yes, please do: what did being “the radio guy” entail?

Was it more software or hardware? I write software for a living so that’s what I’m more interested in; don’t know about parent comment, though.


I can comment on this as I'm kinda that guy at my rocket club as well. Basically many RDF or GPS Trackers in the hobby rocketry community operate over 70cm and require a license for legal operation. Add to that many people buy trackers and yet don't fully familarise themselves with their operation. So you'll have someone with a GPS tracker that has no idea how to get coordinates "out" of the system or what to do with them when they have them. And GPS is the easier system to use as RDFing a tracker (foxhunting) is more readily described as a skill or even an art. It definitely takes practice to become proficient at these types of things. Add to that the fact that many GPS systems are different from an operating perspective and you have a bit of a steep learning curve.


GP seems like it’s venting or speculating rather than trying to make a point; the post starts off with “I’m going to provide no justification.”


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: