HNHacker News
TopNewBestAskShowJobs

yekim

87 karma · joined January 31, 2012

submissionscomments
yekim··on The Architecture of Evil: Dystopian Megacorps in Speculative Fiction Films
Love this article.

For those of you who enjoy a heaping meal of architectural commentary sprinkled with a generous portion of sarcasm, check out the author's blog [1]. Literally LOL every time I get a chance to read it.

[1] http://www.mcmansionhell.com/

yekim··on Why Kakoune – The quest for a better code editor
No, it's not worth it. Modern IDEs make so many things easier than vi / vim / emacs ever did.

vi / vim / emacs can be useful in certain situations (Unix / Cygwin command lines, low level embedded systems that don't have a desktop, etc), but for most code, the modern IDE GUIs blow them away. Code navigation / inspection / contextual browsing is much, much better, easier, and far more productive using Eclipse, CLion, Visual Studio, etc.

yekim··on Modern C [pdf]
Yes - a thousand times yes!

The goto has gotten a bad rap over the years because of Dijkstra's paper. And that paper has unduly influenced a lot of incorrect thinking. There are valid use cases for goto, and this is certainly one of them.

I use it all the time like the example above. Particularly because it makes my life so much easier when developing and debugging embedded C code across various tool chains, some of which have less functionality than others.

[edit - correct typo on Ed's name]

yekim··on Modern C [pdf]
Hear, hear!

Unfortunately, C does get a lot of hate on HN. I suspect it has to do with this site's demographics. Many (not all) of the HN clan seem to be oriented towards / mostly familiar with web based technologies. I suspect that for many who have tried, going from a web dev environment to a C oriented dev environment feels like a robust shock to the system.

I'd also be willing to bet that there's an age bias at play here; C has been around, like, forever. It is certainly not the new hotness. Most (not all) people that I know who enjoy it and are proficient at it, are 40 or older. Much of the web based dev crowd that hang around HN seem to be in their 20s, and as it is a time honored tradition to poo-poo the ideas / methods / tech of the older generation(s), it's not surprising that C doesn't get a lot of love.

Yes, I realize I'm painting with broad strokes here. It'd be interesting to see a survey or three that correlates age ranges and tech used on a day-to-day basis to see if these assumptions or legit. (Anyone got any survey data up their sleeve they'd be willing to share?)

Me personally - I love it all. C, C++, Java, Python, Javascript, Rust, Haskell, Scheme, etc. Making computers do things for you, and for other people, by writing detailed instructions is quite possibly one of the funnest things in the world. Double bonus for getting paid to do it!

yekim··on Show HN: Spamnesty: Waste spammers' time
https://spa.mnesty.com/ = server not found.

Anyone else seeing this?

yekim··on Google Fiber Cutting Jobs and Halting Rollout
I'm in Colorado Springs. Didn't know a CO based city was doing this. That's pretty awesome!
yekim··on Google Fiber Cutting Jobs and Halting Rollout
So bummed to read this. Even though I wasn't going to directly benefit from Google Fiber, it was sure nice to have a non-entrenched player tackle this market.

From the big G's standpoint, it makes good biz sense to exit this market. I sure hope the subtext in the article comes to fruition ie that Google / Alphabet has figured out a better way to get high speed internet to homes in the US sans fiber.

In an ideal world, this fast fiber internet ought to be a municipally managed utility, with my tax dollars paying for the fiber in the ground. Then, my take home dollars paying for whatever competing service(s) I choose to light up said fiber to bring me access to the net.

yekim··on The e-waste mountains – in pictures
Thanks for posting re: the fairphone. Never heard of that before. Got any personal first hand experience with it?
yekim··on Show HN: Top books mentioned in comments on Hacker News
Nice. I'm always taking books that are mentioned in various HN comments and adding them to my reading list. Thanks for making it easy!
yekim··on Mob Programming – The Good, the Bad and the Great
Wow - that. looks. exhausting. And like an overall pretty ineffective use of engineer's time. At least for the kind of SW development that I generally do.

I can imagine certain limited scenarios where this kind of problem solving approach might be useful, but on a day-to-day basis? Nope. No way.

yekim··on TIS-100: the Programming Game You Never Asked For
Assembly language can be fun and awesome!

For me, if I'm ever working in assembly, which is pretty rare these days, it's usually on an overall "smaller" system. Ie an embedded system where all the SW, HW, and tools can be grokked by a single person with out multiple cascading levels of increasing complexity and abstraction.

Good times for sure, though to be real, the good part usually comes after many moments of banging-head-against-brick-wall.

yekim··on Ask HN: How do you debug your code?
Depends on what you're debugging.

Desktop apps w/ C/C++ -- IDE based debugger (Visual Studio, GDB w/ a front end, ADB) print / logging statements

Embedded C -- IDE Debugger (Green Hills, ARM DS-5, IAR, Eclipse w/ remote GDB, etc) GPIO ports, logic analyzers, oscilloscopes, etc)

Apps -- ADT / ADB, print / logging statements

Python, bash, sh, .bat scripts -- print / logging statements

As many others have mentioned, having a consistent bug reproduction methodology is vital, a strong mental model of the SW and its various components is important, and a willingness to dive deep and question assumptions is critical. Ie don't always expect your compilers or various OSes to be infallible.

yekim··on How to reduce the cognitive load of your code
Wrt Perl being readable / legible; I think most find Perl hard to read because there are 3-4 different ways to do the same thing. And many of the more "advanced" ways of doing things rely on short, terse single characters that act essentially like magic and behave differently in different situations. At least this is what I remember as I climbed the Perl ladder.

Contrast this with say, Python, where readability is highly valued and they have a one-way-to-do-certain things mentality, like sorts for example, means code is generally easier to grok, debug, and extend.

Thus, readability becomes especially important when you have to deal with someone else's big ball o' mud and you need to fix a high stress, high visibility, lines down issue at one in the morning because the original programmer is long gone, didn't leave any comments in their code, and decided to play "look at me, I'm so clever with how I use this operator", but forgot to account for a certain scenario that manufacturing decided to roll out the other day without telling anyone. Can I get an amen?

yekim··on The Embedded Toolchain – Tools of the Trade
True, to an extent.

I'm assuming you are referring to the Arduino family when you say "8-bit AVR controllers"? If yes, they do in fact do a great job at making things somewhat easy for the dabbler, and have many resources available online to peruse for help.

Taking the next step to full-on embedded development (STM32 in this case), as you are finding out, is quite a big leap. Not that it can't be done, but that it really is challenging.

Guess it depends on your background and your familiarity with software development and/or hardware in general.

yekim··on The Embedded Toolchain – Tools of the Trade
Depends on how deep down the embedded rabbit hole you want to go.

Personally, an article like this, with its main diagram and high level descriptions, would have been enormously useful back when I was just starting to learn the dark arts of computer programming.

If your Point of Sale systems are running some embedded form of Linux, and all HW access is abstracted away from you, then you're probably right.

On the other hand, if you are writing code that deals with external HW signals, performant memory access, ISRs, an RTOS and their many features, etc, then this article serves as a good basic foundation for the "software" side of things. Ie what actually happens when you hit the "build" button in your IDE.

From, a long time embedded software engineer

yekim··on Akin's Laws of Spacecraft Design
ARRL handbook = this?

http://www.arrl.org/shop/ARRL-Handbook-2016-Hardcover-Editio...

yekim··on Heavy Recruitment of Chinese Students Sows Discord on U.S. Campuses
I also want to thank you. For making me bust out some google-fu to figure out what "Poe's law" and a "fugue" are. And for the lulz of course. That goes with out saying.
yekim··on SpoonRocket shuts down
"Technology has a peculiar ability to light gigantic piles of money on fire."

Just wanted to say thanks for the laugh! It's not often than a comment on HN makes me laugh out loud. As in laughing with you, not at you...

yekim··on Letter of Recommendation: Sleep, ‘Dopesmoker’
This article is absolutely hilarious! I rarely laugh out loud when I'm reading stuff, but this line just got me.

"Because I’m overeducated and insecure, I package my banal observations in semantic finery, so I feel a kinship with lines like ‘‘Earthling inserts to chalice the green cutchie/Groundation soul finds trust upon smoking hose,’’ which is a fancy way of saying ‘‘a guy smokes some weed.’’ The thesis of ‘‘Dopesmoker’’ may boil down to ‘‘smoke dope,’’ but first-time listeners should be forgiven for wondering if it’s actually an anthropological study of Qedarite tribes in the pre-Christian Sinai Peninsula."

Totes hilare. Any song with lyrics that complex and earth shattering, deserves a listen. Plus - metal. Ya. Rocking out to the epic tune now!

yekim··on Resolutions for programmers (2012)
That's awesome! I think more SW engineers ought to be getting exercise for all the benefits mentioned in these comments.

Me personally - I climb, bike, run, and lift. I like variety, and I usually only do one of those activities a day. I find yoga to be too slow, with little mental engagement, and thus boring. My wife, however, loves yoga. And we run and climb together when we can.

It's all about finding some form(s) of exercise / physically-intense-activity that works for you. I found that I'm attracted to things that engage both my mind and body. Rock climbing is incredibly hard physically and mentally engaging; each boulder problem is like solving a puzzle. And for the progression minded, each route or climb is graded so one can measure progress and overall fitness improvement. Mountain biking is fast, furious, and mentally demanding because you have to pick the right line to stay rubber side down. I tend to ride as fast and as hard as I can, both up and down trails to keep it demanding and fun.

Cross-training is important as it forces you to work different muscle groups, which promotes overall better body awareness and health. I also find that when I take breaks in the middle of the day to do these kinds of activities, I find I'm able to focus better and get more done. I've also found that when I'm stuck on a particularly thorny challenge, be it a defect or algorithm / design problem, taking a break and getting some exercise usually opens up new avenues of thought and ideas I hadn't considered previously.

yekim··on How Completely Messed Up Practices Become Normal
This is a very interesting idea. Have you, or anyone else on HN, ever seen this in action? I would LOVE to hear stories about this, either successes or failures.
yekim··on UberHop: More people in fewer cars
Or like becaks and opelets in Indonesia.

https://en.wikipedia.org/wiki/Cycle_rickshaw

https://en.wikipedia.org/w/index.php?title=Oplet

yekim··on Bash Academy
Something else to consider is that many embedded Linux systems do not have bash, only sh (aka Bourne shell). It is often easier to use only Bourne shell-isms to get things to work in a cross-target fashion. That said, I prefer bash for most cross platform (as in cross OS platform) tasks that need a simple shell script of some kind.
yekim··on Free Lossless Image Format
Pretty sweet. Will be interesting to see where this lib goes. If someone has some time, maybe they could give it a mention on the Wikipedia page: https://en.wikipedia.org/wiki/Image_file_formats
yekim··on Tesla Model X Launch event, livestream
Caught the tail end of the event. Elon definitely comes across as genuine and a real person. That said, a little practice in the stage presence / showmanship department could certainly help things flow smoother and amp up the excitement a bit; something this brand and its cars deserve!
yekim··on Wi-Fi hack creates 'no iOS zone' that cripples iPhones and iPads
Just wanted to say thanks for posting this. I wasn't aware that this was the case on Android. I've now turned my WiFi "completely" off.
yekim··on Get away with Google Flights
I wasn't even aware of Google Flights until I saw the article posted on HN. Go figure...

For some of us, the constant deluge of info, along with work and family life, makes it tough to stay on top of all the latest developments. Glad this service was "re-announced".

yekim··on Komments – Simple comment embedding
I can't get to komments.net. HN server overload?

I'm getting this error message:

Application Error

An error occurred in the application and your page could not be served. Please try again in a few moments.

If you are the application owner, check your logs for details.

yekim··on Useful Unix commands for exploring data
Thanks for throwing this out there. Never heard of this command before! Definitely a good one for my bag o' tricks.
yekim··on Inside DuckDuckGo, Google's Tiniest, Fiercest Competitor
Thx for the info on startpage.com. Never heard of it till this thread on HN. Just made it my homepage and added it to my tool bar.

I switched to DDG a couple years ago after becoming concerned about privacy. Unfortunately, DDG has never quite cut it for me in terms of search results. I do a TON of technology related searches, particularly wrt very obscure programming related technologies, especially related to embedded target dev. DDG always comes up short, and I typically end up doing "!g" searches. So startpage.com appears to the best blend of privacy + good search results. For me anyway...

Page 1 of 2Next →