Hacker News new | ask | show | jobs
by no_time 1715 days ago
As the complexity of our every day devices increase, less and less people are capable of contributing anything meaningful to an OS like Linux, let alone in their free time. It also doesn't help that the abundance of high level languages discourages learning about computer internals in younger generations.

Or that we indeed became softies lol.

2 comments

Language is very small part of it. For example me contributing a anx7688 driver for pinephone to make convergence work was C coding, yes, but also reading through type-c spec, battery charging 1.2 spec, usb-pd specs, alt-dp specs, and figuring out how it all works from 0 knowledge, to tie all that together on a quirky HW design, with several hardware bugs that I had to discover first, and non-cooperating PMIC/and type-c controller, on 3 different pinephone HW variants.

C coding is the easiest thing. Hard part is figuring out what needs to be done and getting quite detailed understanding of how everything works on HW level, lots of trying and testing with various USB devices in various scenarios. There's also a lot of reverse engineering, because no HW vendor cooperates with random fucks from the internet and gives them free support. :)

So drivers are definitely awesome. But at some point adding some usability for “killer apps” on the mainline phones might pull in significant users.
Killer apps for me are physical keyboard, GUI bootloader that can do multi-boot (so that I can switch between one of the mobile distros and a Xorg based i3wm desktop, because there's no way mobile distros will ever have reasonable performance for convergence use), convergence with accelerated video playback and a reasonably smooth web browsing, possibility to run Arch Linux ARM as is with access to the entire package repository of software (that is not ad laden or spyware by default) on my fingertips, and full control over the security of my phone by being sure I can run my OS without the CPU ever touching any code on any modifiable storage inside the phone,... :) That's already there with original Pinephone.
Those harder classes used to be referred to as weed out courses. Incoming class of 100+ students to Assembler. After 2 weeks, 60%+ drop the class.
I'm currently TA:ing my uni's Introductory Computer Engineering class (from logic gates to assembly). It's not as much of a weed out class as you'd think and yes, it's the first class they take, along side some introductory python. Most of them do seem to hate the assembly part though personally I found the part where you have to actually make an instruction to be much harder when I had to take this class