HNHacker News
TopNewBestAskShowJobs

tedyoung

516 karma · joined March 13, 2008

Java coach, educator and live coder.

Twitter (and almost everywhere else): JitterTed

Blog: https://TED.dev

Twitch: https://JitterTed.Stream

My Discord: unlisted, but DM me for an invite: JitterTed#4770

Email: tedyoung@gmail.com

submissionscomments
tedyoung··on Why Books Don't Work: Constructivism over Transmissionism
It depends on why you're reading a book, no?

Are you reading it to find an answer to a problem? Then you'll probably skim, search, scan, and then closely read the part that (may) have your answer.

Are you reading to be exposed to something new, in a structured way? Then maybe it's not important to "learn" it, just to become aware. (btw, awareness is valuable, which is why talks and lectures are still important: to raise awareness and maybe provoke questions to explore later.)

Are you reading to be able to apply the information? And in what way? Just a bunch of facts? Then memorization techniques (Anki, et al) are useful.

But for learning to build expertise? No, a book is not enough. Memorization isn't enough. Even "integrating it with your relevant prior knowledge" (important!) isn't enough. You must do the thing you want to learn and _get feedback_. Generating summaries, explaining it to someone else, etc., are all great techniques, but if nobody is telling you whether what you've summarized or explained is right or wrong, how do you know if you've learned it correctly?

tedyoung··on How many technical books do you read per year?
I think it's more important to ask: how much have you _learned_ from reading technical books?

There's also different reasons for reading technical books: getting answers to current problems (though most people would just search the web); going deeper on a specific topic that you're already familiar with; tackling a new area; etc.

While I read a lot of pieces of books, I find reading in a group (book club[0]) to be the best way to really understand what's read (as well as providing a bit of discipline and structure to make sure I really read it and don't just skim/skip).

[0] This is why I run a weekly book club as part of my Discord community (https://ted.dev/discord), so I know I'll deeply read at least a few books every year.

tedyoung··on An Overview of Distributed Caching
It has a bit about Web caching (and mentions caching proxies), so that's a _form_ of distributed caching. It is a high-level overview, though.
tedyoung··on Nobody likes self-checkout. Here's why it's everywhere
I prefer self-checkout because I pack my own groceries: I _know_ in which bag and in what order I want things packed so I can optimize unpacking when I get home.

Here in SF Bay Area, Safeway has great self-checkout, and Costco recently added them (also great). Target ones though seem to expect you to have 2 or 3 items, because there's _very_ little space on the scale (mostly taken up by the plastic bags that I don't use).

tedyoung··on Nobody likes self-checkout. Here's why it's everywhere
Isn't spending less time waiting to pay and leave the store a discount?
tedyoung··on Ask HN: Should we call it 'aesthetics' instead of 'technical debt'?
I prefer "habitability" over either term. "This place is a mess, we're constantly tripping over things, how about we make it a more habitable codebase to work in?"

No matter what you call it, though, if teams aren't empowered/encouraged to make the code more habitable, it won't happen. You could call it "partying" instead of "removing tech debt" and folks still won't do it if the system around them discourages it ("must work on next feature now!").

tedyoung··on Mission Team Determines Cause of Communications Issues for NASA’s Capstone
I'd love to see a more technical article on what the "badly formatted command" looked like. How do their systems allow "badly formatted" to be created?
tedyoung··on JetBrains/Intelij is increasing their prices
You can also wait until September and then renew for 3 years to keep the current pricing through 2025. By then, inflation will have caught up and it'll be just as cheap in 2022 Dollars.
tedyoung··on JetBrains/Intelij is increasing their prices
If you're coding in Java, is it really not worth a few hundred dollars to be incredibly more productive in a tool design for Java instead of a fancy text editor? IntelliJ IDEA is incredibly powerful, and it's worth learning things like its more complex automated refactorings, postfix completion, live templates, etc.
tedyoung··on JetBrains/Intelij is increasing their prices
The price still goes down every year, it's just at a higher price. (Not sure about your "high initial price" — was that a perpetual license?)

Note that you can renew for 3 years at a time at the current pricing. And if you've been paying for it for a while, you can always use the perpetual fall-back license: https://sales.jetbrains.com/hc/en-gb/sections/201619995-Our-...

If you're not using it, why pay for it?

tedyoung··on 13-inch MacBook Pro review: Apple’s M2 is a worthy follow-up to the M1
Seems like since it's not _really_ a Pro, is there really a market for this particular model? Enough Touch Bar fans to purchase the last remaining model that has one? Otherwise, why not get the Air?
tedyoung··on How Townscaper Works: A Story Four Games in the Making
Apparently procedural generation and constraint solvers are AI now? I thought they were just algorithms. (I love Townscaper, btw, but this article—whew.)
tedyoung··on Ask HN: Where did all the meetups go?
Here in the SF Bay Area some meetups have resumed in-person events, but I'm not attending them yet. I still attend lots of online ones. People aren't going to offices as much, which is where many meetups used to be held, so we've probably permanently lost a lot of those in-person meetups that no longer attract enough people to make it worth it.
tedyoung··on Ask HN: How to remember technical topics which you don’t use/refer everyday?
Bjork's research is all about forgetting under the Theory of Disuse (along with desirable difficulties, which is what helps us remember). See https://bjorklab.psych.ucla.edu/research/ for more.
tedyoung··on Ask HN: How to remember technical topics which you don’t use/refer everyday?
I think your question "how do I remember stuff I don't use often" is not a useful question to answer. Why do you need to remember things you don't use often? You don't.

Memory is not binary: you will have easier or harder access to things in your long-term memory. Those that you access more often, get easier. Those that you build up more complex structures around (understanding concepts underlying those concepts) make it easier to retrieve.

The more you learn and connect information, and generate it (by writing summaries, applying that information, etc.), the stronger that network of information becomes, which means that when you "forget" it (find it hard to retrieve), a quick skim about that topic will bring the whole network of information back to your conscious awareness.

If you want to build better knowledge networks in your brain, you have to (re-)generate that knowledge in different forms. Pick a "node" of that knowledge that's a little fuzzy and learn more about it to clarify it. Draw diagrams of how that knowledge fits together.

Ultimately, constant retrieval of information, with restructuring and clarifying, will make it easier to get back when you need it.

tedyoung··on Ask HN: Where do you go for discourse?
Same. Discords (and open Slacks) are great places to discuss very focused topics. I belong to a bunch and run my own (focused on Java, Spring, etc.), because I couldn't find forum for experienced developers instead of only new and junior devs.
tedyoung··on Ask HN: Where to deploy a Spring Boot app with a fixed spending cap?
I have a dozen Spring Boot apps deployed on Heroku, only a couple of which I need instant response from, so pay $7 for the hobby level for those. The rest run on the free hours that you get each month.

Deployment is almost trivial, as it recognizes the Maven or Gradle file, and, other than specifying the version of Java you need, it does everything else automatically.

I have been trying out https://railway.app/ and will be moving over a bunch of my Spring Boot projects to there. The cost is predictable (and low), and deployment is as easy as Heroku.

You can check out the source code for one of my main projects at https://github.com/jitterted/mobreg. https://github.com/jitterted/mobreg/blob/master/system.prope... is the only Heroku-specific file I have. It uses GitHub actions to build and run tests, and only if the tests pass does Heroku pick it up and deploy.

tedyoung··on Ask HN: What's your favorite flat file blog?
After a long time trying out different static-site generators (Gridsome, Hugo, Jekyll, etc.), I finally settled on 11ty (and TailwindCSS). Mainly because I could understand almost everything it does. I did find that I needed to start from scratch, so I could see what every plugin, filter, etc. affected the site. I would read other templates and how they did things, and then slowly add them to my configuration.

You can see it at https://Ted.dev, though I still have lots of work to do to make it more than just a list of articles.

tedyoung··on Linen – Make your Discord community Google-searchable
What's the catch? It's currently free, but given that it's VC-backed, somewhere there's gotta be money made. Ads? Selling my community members' data?

And I also have questions about syncing: message deletions, channels changed from public-to-private, etc.

tedyoung··on Motivating Developers to Care About Documentation
Lots of things might be thought of as "distasteful", but that doesn't mean one can't be motivated to do it. You might not like exercising, but there are still ways to be motivated to do so.

Saying that it's not a matter of motivation means what? We don't have devs treat documentation as important and give up? No, like other tasks that devs do, we set up a culture of positive feedback (it's not always money) for caring about docs.

tedyoung··on Motivating Developers to Care About Documentation
> If you’re taking documentation really seriously, put it on the scorecard. Look for good writers. ... Then put it in your career ladders too. It’s a competency that individuals need to develop if they’re to move to the next level.

Exactly. If it's not evaluated and rewarded in the same way shipping code is (in hiring, too, as mentioned), it'll never be treated as important by developers. Devs are generally rational: if you say "write docs!", but then complain when things take longer because they were taking time to write docs, well, then you can guess what will happen.

tedyoung··on TurboTax’s fight against free tax filing
Except for the 2nd year in a row, TurboTax fails to understand how to handle short put positions (of which I have many, many trades). It doesn't understand how the cost basis could be 0.

I'll have to short-circuit it _again_, and this will be the last year I use TurboTax: if I'm going to have to manually work around these things, I may as well not pay for the privilege. Prior years made it trivial to import the data from the 10 different financial firms that provide 1099s.

tedyoung··on Show HN: Stacktape – Full power of AWS with Heroku-like experience
I think the comparisons on the site (e.g., vs. Heroku) are misleading. With Heroku (and true competitors such as Railway.app), I don't need to create configuration files for my app, for Redis and the PostgreSQL database I want to use, etc. I pick out some things from a UI, hook it up to my GitHub repo, and deploy (putting side the recent Heroku/GitHub OAuth security issues).

I'd be interested in seeing Stacktape vs. Qovery, which seems a bit more closely related.

tedyoung··on Show HN: Stacktape – Full power of AWS with Heroku-like experience
Because Heroku is a PaaS and the headline said "with Heroku-like experience". If it's not a PaaS-like experience, then Heroku shouldn't be mentioned.
tedyoung··on Ask HN: Have you created programs for only your personal use?
I created "Kid Money Manager", a tool to help manage my son's virtual account. He wasn't old enough to open his own bank account when I started, but we needed some way to track his "earnings" (returning bottles for their deposits or gifts from grandparents) and spending. It has both a Web UI and access via SMS text messages. We mainly use the text messaging—entering transactions at the store, etc.— since I didn't want to write a dedicated phone app for such a simple interaction.

Created it from scratch, live coding it on my (https://JitterTed.Stream) Twitch channel (and some videos on my YouTube channel at https://JitterTed.TV). Written using TDD in Java + Spring Boot, deployed on Heroku and open-source at https://github.com/tedyoung/kid-bank.

I also recently wrote "Format Hero" (https://formathero.dev), because I could never remember which letters to use in Java's DateTimeFormatter. Was also a good demonstration of Hexagonal Architecture and, of course, I live coded it, TDDing all the way. Source is at https://github.com/jitterted/format-hero. Still some work to do on that one, but filled my immediate need.

[edit: added proper links for Stream/YouTube]

tedyoung··on Agile and the Long Crisis of Software
Sigh. Another article on "Agile" that makes it read like "SCRUM" == Agile (Sprint, Stand-Up are Scrum terms, not Agile). Scrum doesn't work without good technical practices.

Also, no developer/team-level process will do any good if "no one really knew what the project was ultimately supposed to look like, or exactly what purpose it was supposed to serve".

Also this article doesn't reference any of its sources and doesn't appear to use any sources from folks like Martin Fowler, Ron Jeffries, and others. Instead it references folks who I've never heard of (I think—again, without references, who knows?).

tedyoung··on Ask HN: Is there a way to get Agile right?
> tracking work efforts

Why are you doing this? How does it help improve delivery of value to those who are paying for the product/service?

Agile was intended to have people discover better ways to deliver something of value.

This is why the Agile Manifesto starts with People (vs. some unchangeable process handed down from above) and Working (Valuable) Software, instead of a book full of "requirements". And so on.

If you haven't read the Agile Principles, you're unlikely to be Agile: https://agilemanifesto.org/principles.html

The goal is: provide value, get external feedback on how it could be more valuable, as well as internal feedback on how people can deliver that value better.

That's it.

Everything else needs to either support that, or is just someone trying to micromanage you (and don't think that's not done on purpose).

tedyoung··on Launch HN: Helio Sleep (YC S21) – One-stop portal for sleep apnea
Came here to say this. And not just preventing patient access to the data, but locking the ability to change settings in a reasonable manner, without having to con$ult with a "doctor" (really an admin at the doctor's office) for each tiny increase in air pressure. It's one of the reasons I gave up on the whole CPAP thing.
tedyoung··on Meld is a visual diff and merge tool targeted at developers
Is Meld aware of the programming language when it does diffs? The problem I have with many diff tools is that they'll detect block moves without regard for things like method boundaries. Instead of showing the change as moving a method's ordering, with some changes within those methods, most diff tools treat it as just text moves and changes.

So to me, "targeted at developers" should mean something more than what Meld seems to offer (i.e., more than just syntax highlighting and regex filtering).

It's disappointing that programming language-sensitivity isn't more common. [I developed a Visual Basic compare/merge app in the early 90s that did a good job of this because it did extra work to understand the structure of the code, splitting methods and sorting them before comparing.]

tedyoung··on Zotero 6
OMG, I've been waiting for an iOS app for Zotero for so long. Yay!
← PreviousPage 2 of 8Next →