HNHacker News
TopNewBestAskShowJobs

andrewzah

3,095 karma · joined January 22, 2020

The best way to reach me is by email: zah@andrewzah.com.

My website and blog: andrewzah.com. I write about programming, language learning, and traveling. I have been studying Korean for ~4 years now.

My code: https://github.com/andrewzah. Currently remotely employed by Open Source Systems.

GPG: D87BD9DCF11BACD6CDB40CB213732FB13E61E0BE

submissionscomments
andrewzah··on Ask HN: What is your “I don't care if this succeeds” project?
Considering the cost of music gear + lessons, I find it unlikely I'll ever make a profit. I also consider it more than a hobby, but something I can't fully commit to due to having a day job to focus on.
andrewzah··on Ask HN: What is your “I don't care if this succeeds” project?
Music is about discipline. "Talent" is more or less a multiplier, but is useless without discipline in the first place. Needing "talent" (to be very good at it) is a myth. You don't have to be the best in the world to be very good at something.

There is no secret. It just takes time and work to get good at an instrument or producing.

edit: clarity

andrewzah··on I changed my mind about advertising
There's a term for changing your opinion because you now realize you can profit from it. Unprincipled.
andrewzah··on Spotify deletes 70 Joe Rogan episodes
I’ll gladly dig my own career grave for $100 million.
andrewzah··on Ask HN: At a peak of my dev career, I hate my life
"I tried to meet new people at hobbies and dance lessons, but guess what - they're all full of lonely developers and other socially awkward people - short guys looking for girlfriends, unattractive/aging women looking for husbands, etc."

Gee, I'm just shocked that you're having a difficult time making friends. Who wouldn't want to be friends with judgemental folks?

There isn't anything to mention that you don't know already. There is no quick fix. Find a hobby like sports or music etc and meet people through that, or do other sorts of meetups. But the problem here is your attitude, not the people. Don't take your frustrations out on other people, it's not cool.

andrewzah··on Typed Config Languages
"There, done."

Except, we're not done.

YAML has multiple footguns like this, which I have to remember, forever. And anyone who works with YAML. It's unintuitive and confusing, and costs space in my brain that I really should be using for more important things.

Not to mention that if you -don't- know about these ahead of time, debugging them can be confusing.

A type system is marginally more work for decreased cognitive load and eliminating stupid, idiotic bugs that nobody should have to waste their time tracking down.

With IDE integration, the cost is pretty much negligible other than learning the syntax, which, c'mon, is not difficult and we're being paid to do it.

There are even tools like Dhall [0] that auto-generate yaml for us.

[0]: https://github.com/dhall-lang/dhall-lang

andrewzah··on Gitlab Handbook's HN Page
...Can we not have more projects move to a proprietary, closed source chat system? (And one that tracks every mouse movement you make...)

Zulip, Discourse, Element(formerly Riot) / Matrix all exist and are fairly nice. And of course, IRC. Searching works well for Zulip/Element.

andrewzah··on Who Watches Watchmen? – Integrating Elixir Applications with Systemd
Ah. I used to use Zola but I migrated to Hugo myself.
andrewzah··on Who Watches Watchmen? – Integrating Elixir Applications with Systemd
It’s a theme for Hugo.

https://themes.gohugo.io/themes/hugo-theme-terminal/

andrewzah··on Effortless personal productivity (or how I learned to love my monkey mind)
Flow is completely, totally different. GP is discussing self-reflection and learning to be mindful of oneself and one's surroundings - which is basically meditation.
andrewzah··on Teaching how to code is broken
It's a pithy saying. It's basically shorthand for: "nobody wants to put in the work and adjust their lifestyle to achieve that goal of being ripped". But I wouldn't say doing 3x or 5x sets of lifting heavy weights ever is "fun"- you just get used to it.
andrewzah··on Ask HN: Should I publish my research code?
College degrees aren't standardized and most of the time don't really mean anything. Ask some TAs for computer science courses about how confident they are in undergrads' ability to code.

There isn't a standard license that show that someone is proficient in security, or accessibility, or even in how computer hardware or networking work at a basic level.

So all we're doing is diluting the term "engineer", so as to not mean anything.

The only thing the term "software engineer" practically means is: they have a computer. It's meaningless, just a vanity title meant to sound better than "developer".

andrewzah··on Teaching how to code is broken
Sitting at a computer for 10 hours a day isn't a gendered thing.

There is nothing about computer science or programming that is gender specific. It, ideally, should sit around 50-50, ±5%. So yes, it is a problem that it so heavily skews male.

As to why, it's multi-faceted cultural issue, with how our society treats boys and girls starting from birth. In other words, a pipeline issue.

andrewzah··on Teaching how to code is broken
That's like most hobbies/careers.

People want to learn the guitar|piano|violin, until they realize the amount of work it takes.

People want to get fit and jacked, until they realize the amount of work it takes.

People want to be a lawyer/doctor/engineer, until they realize the amount of work it takes.

Or they realize that they just don't really like it.

Programming isn't any different. One needs a particular mindset, and a level of patience to deal with debugging. It's not for everyone, and that's fine.

andrewzah··on Ask HN: Should I publish my research code?
The average developer isn't often doing "engineering". Until we have actual standards and a certification process, "engineer[ing]" doesn't mean anything.

The average software developer doesn't even know much math.

Right now, "software engineer" basically means "has a computer, -perhaps- knows a little bit about what goes on under the hood".

andrewzah··on The burden of an Open Source maintainer
In my opinion, there is no expectation for someone to accept your requests or PRs. It's definitely not the norm, but I reserve the right to not do anything that I don't want to do. You don't know someone's life situation or current goals; that library or tool may work fine in their use case or they don't have the time/desire to implement a fix or review a PR.

That's why forking exists.

That's the risk of pulling in external libraries from random developers. Unless you're willing to put money where your mouth is, then all you reasonably can do is politely request a fix or for them to merge your PR.

andrewzah··on The burden of an Open Source maintainer
I'm not talking about society in general. I'm talking about random F/OSS projects on github. There is zero expectation when looking at someone's project from afar.
andrewzah··on The burden of an Open Source maintainer
No. No. No.

There is no such thing as this "social contract".

I publish software on github with MIT or (A)GPL licenses for various reasons:

* In case someone else has the same issue I did

* In case someone is working on something similar and wants to learn from my code

* As an external backup in addition to my hard drive / private git repo / etc.

* Because I can. (deal with it.)

There is NO expectation or "contract" or anything. People can open issues or politely request things, but getting upset or pushy over F/OSS released on someone else's own terms is just entitlement.

andrewzah··on It's not what programming languages do, it's what they shepherd you to (2020)
Supporting async isn’t a bad thing. It is annoying when working with async stuff and suddenly a library doesn’t support futures or streams.

But I do agree that it seems that people jump to use async instead of e.g. threads. I think there should be more literature around what situations work best for threads vs async, etc.

andrewzah··on We need to reclaim our attention
That has nothing to do with people erroneously blaming the "decay of society" or the "loss of traditional values" on things like rap music or videogames.

We can talk about how the internet has made things like porn ubiquitous, and how certain games are intensely addicting. But that is a wholly separate discussion.

andrewzah··on Show HN: Meetup with other travelers in a new place
Language exchanges, live music, hobby meetups (via fb/insta/meetup.com), etc.
andrewzah··on We need to reclaim our attention
I will never understand how people can suggest a specific musical genre or a medium is responsible for ruining society or "destroying values like the value of work" with a straight face. When I ask for empirical proof of such things, there never is any, just anecdotal statements.

As if country music never touched upon these sorts of topics. Or books. Or ...

Moral panics come from old people who don't like anything that's different from their youth. "Kids these days!" And in America, especially so if that thing happens to be dominated by black people.

andrewzah··on Stanford requires booster shots for all students
Words/terms aren't static, and can change over time.

I'm not against skepticism or conspiracy theories, but this one doesn't really make sense. Word usage and dictionary definitions update all the time.

andrewzah··on Stanford requires booster shots for all students
They updated it after observing the usage of the word. That is how dictionaries work, because they are descriptive and not prescriptive.

Many people do in fact use the term anti-vaxx(er) to refer to people who are against vaccines and also against regulations around them.

andrewzah··on Teaching D from Scratch: Is it a viable first language?
There are some misconceptions, I think, here.

1. People learn more than 1 language. What I'm referring to here is complete beginners who need to learn -how- to program. Once they grok that, it's not difficult to move to other languages, obviously with some exceptions.

2. It's not the job of a -language- to teach everything about programming or networking or computers or various protocols. That's the job of a curriculum.

3. There are way more $major_lang jobs than jobs for D, Clojure, Lisp, Crystal, or any of the other languages that are significantly less used. The sky is the limit for how many languages people want to play around with and learn, once they know enough to start learning other languages by themselves. No recruiter is gonna be like "oh, you learned $major_lang... Even though you likely applied to this role because our stack involves $major_lang and that's a language that you know well..."

4. Help, resources, meetups etc for $major_lang are orders of magnitude more plentiful than for D, etc. Imagine telling a student "no, no, you need to prove yourself by making forum posts for <niche language that I personally like and use> instead of having stackoverflow questions or tutorials to follow" in the case of getting stuck. Of course students should strive to do as much as they can themselves, but you would be surprised to see what beginners get stuck on and just need a gentle push to get going again.

5. Being able to be independent is more engaging than having to constantly pester a teacher or a forum. If a student wants to be a go-getter with e.g. python or lua, there are communities and resources to build games or websites, etc. And those already have had common stumbling block questions answered because they have large communities around them.

For the goal of teaching someone how to program, any language other than the major ones like python, javascript, ruby, c++ strictly make it more difficult for students because of the smaller ecosystem, lesser amount of documentation, and smaller community in general. I have nothing against D or other niche languages, but I'm against picking languages just because I'm familiar with them.

It can be difficult for experienced programmers & power users to remember that there's a sheer amount of information that needs to be learned in. There is no reason to make that more difficult for students.

andrewzah··on Teaching D from Scratch: Is it a viable first language?
To be frank, why would one choose a language with a small community over any of the major languages? Beginners have to learn -how- to program on top of the language's syntax and toolchain itself, so it helps tremendously to be able to search online when they get stuck. And boy do they get stuck a lot, in my experience.

If you pick something like python, any common beginner problem should have questions answered on stackoverflow, blog posts, etc. With a more boutique language that's not the case. Not to mention the ecosystems are much larger so chances are a library already exists to do something instead of making the beginner do it themselves and overloading them. There will be more tutorials, so people can get unstuck. More documentation around the tooling and just documentation in general exists, and so forth.

---

Of course, you should teach "what you know best", but how hard is it to learn e.g. python (even just for the scope of the course) and just teach that? My favorite languages are Rust and Go, but I'm not going to foist those upon newbies just because I'm more familiar with those than javascript, python, ruby, etc.

The secondary lesson here is that teaching (well) is actually quite difficult. Coming up with a curriculum is hard. Keeping students engaged and unstuck is hard. Knowing how to program doesn't prepare you for any of that.

andrewzah··on Please don't use Discord for FOSS projects
You can use a ZNC bouncer, or a client like TheLounge. It's always "online" so I see the context for any pings. It's trivial to set up.
andrewzah··on Tirana Prosecution to Investigate Alleged Data Leak of More than 630k Albanians
https://en.wikipedia.org/wiki/Language_isolate

The largest one is likely Korean.

Also, https://en.wikipedia.org/wiki/Albanian_language#Classificati...

andrewzah··on Ask HN: My client want an agent on my laptop. Is this the new normal?
"either working on screens that are too small (14" really isn't enough to be productive)"

I work primarily from a 13" xps. Given the high-res display + that I can switch desktops easily via i3, it's really a non issue for what I do.

You can also use a dock. For my work laptop, I use the Caldigit TS3+ thunderbolt and it's great.

andrewzah··on Chess.com vs. Lichess
Lichess has a monthly subscription you can get for $5 or a custom amount. Does nothing except except make your badge a different color. Totally worth it to support such a great site.
← PreviousPage 4 of 29Next →