HN user

matt2000

3,187 karma

http://www.larvalabs.com/

Posts99
Comments282
View on HN
neilmadden.blog 10mo ago

Rating 26 years of Java language changes

matt2000
4pts0
www.theverge.com 2y ago

IEA predicts peak oil in 2030

matt2000
2pts0
twitter.com 2y ago

The new Google Earth is built with Flutter

matt2000
4pts2
www.newyorker.com 4y ago

Can Nuclear Fusion Put the Brakes on Climate Change?

matt2000
40pts94
www.wired.com 5y ago

Serious Doubts Surround AstraZeneca Covid Vaccine Data

matt2000
12pts0
twitter.com 5y ago

Apple M1 is 1.6x faster than 2019 iMac in Affinity Photo Benchmark

matt2000
2pts0
www.wired.com 6y ago

Profile of a social network populated by adoring and supportive bots

matt2000
3pts0
www.ncbi.nlm.nih.gov 6y ago

Wuhan seafood market pneumonia virus isolate Wuhan-Hu-1, complete genome

matt2000
1pts1
twitter.com 6y ago

The 2038 problem is already affecting some systems

matt2000
48pts4
www.nytimes.com 6y ago

US Budget Deficit Was over 1T Dollars

matt2000
2pts0
www.nytimes.com 6y ago

Electric Cars Threaten the Heart of Germany’s Economy

matt2000
152pts316
twitter.com 6y ago

Twitter to stop re-compressing images

matt2000
3pts0
twitter.com 6y ago

When someone tries to take down your site and fails

matt2000
3pts0
twitter.com 6y ago

JetBrains: $270M revenue, 405K paying users, $0 raised

matt2000
1168pts662
www.zdnet.com 6y ago

AWS Graviton2: What it means for Arm in the data center

matt2000
3pts0
blogs.oracle.com 6y ago

Understanding the JDK’s New Superfast Garbage Collectors

matt2000
1pts0
github.com 6y ago

Developer “Swiss Army Knife” v0.3

matt2000
1pts0
decave.github.io 6y ago

Causal Profiler for Java

matt2000
3pts0
medium.com 6y ago

Dart 2.5 announced: Direct C interop and ML autocomplete

matt2000
4pts0
www.nytimes.com 7y ago

New Estimate for an Oil Leak: A Thousand Times Worse Than Rig Owner Says

matt2000
65pts18
www.nytimes.com 7y ago

U.S. Escalates Online Attacks on Russia’s Power Grid

matt2000
261pts170
github.com 7y ago

Visualizing GitHub Repository Activity with Flutter Web

matt2000
3pts0
larvalabs.com 7y ago

Optimizing animation and render performance when using Flutter on the Web

matt2000
2pts0
github.com 7y ago

Encode numbers and strings into emoji (base 1024)

matt2000
1pts0
medium.com 7y ago

Unsplash hosting costs – 2019 breakdown

matt2000
4pts0
www.youtube.com 7y ago

Tesla Full Self Driving Demo on HW3

matt2000
37pts21
www.reddit.com 7y ago

Current Tesla autopilot is sometimes blind to stopped cars

matt2000
49pts52
breakermag.com 7y ago

How two programmers from Brooklyn accidentally paved the way for blockchain art

matt2000
2pts0
github.com 7y ago

View your contribution graph from the terminal

matt2000
1pts0
www.techrepublic.com 7y ago

Inside the Raspberry Pi: The story of the $35 computer that changed the world

matt2000
31pts4

I am increasingly wondering if we are in a post-language world in terms of development. Why would I ask an agent to write a server in anything other than the most efficient language, although efficiency can take several forms: runtime, token usage during development, and wall clock dev time (affected by slow compile times for example).

My intuition is that type-safe languages with fast compilers are the best option. Maybe Go? I personally prefer Java just due to my experience running it in production, but am not sure there's many arguments for it over Go in a greenfield application. The other candidate would be Rust, but I worry about token efficiency and tool performance, I suspect it's not worth it for the runtime improvements.

All that being said, in this article switching to Python seems like a wild choice. Relatively poor performance, no compile time checking at all. Python's big selling point was developer ergonomics, which seems largely irrelevant now.

These are all just thoughts at the moment, I should try to find some evidence one way or another.

I agree, and I'm not sure how something like 'var accounts = calculateAccounts(something)' can be thought of as better in a code review setting. I suspect using "var" or equivalent will be considered a problem by most companies within the next few years.

It's hard not to think that both Honda and Toyota are just trying to convince EV buyers to delay their purchase since something "much better" is about to be released, or at least until they have time to release competitive EVs. Both companies are in the press talking about huge improvements possible with their solid state batteries, with no current production to speak of.

It should be considered a failure of our profession that after all these years the number 1 issue is still out of bounds write, a memory safety issue. In any true engineering profession a failure of this sort would be unacceptable, but in ours it's tolerated and explained away as a necessary byproduct of certain tools. How much personal information has been compromised due to these low standards? How many people put at risk? It's shameful.

Has anybody tried this and can share their experiences? It sounds really cool, but it's usually the edge cases that determine whether something like this is actually good or not. Thanks!

Agree, it's a straight up reduction in code readability for all future maintainers so a single original developer can avoid doing a thing their IDE probably would do for them automatically. (I use "introduce variable" to create most variables automatically of the correct type).

Yes I know the IDE can also reveal what type a var is, but you generally read code in lots of places that aren't IDE enabled.

It also adds more work for the compiler. I'm not sure the effect on Java compile types yet but Kotlin and Swift have both suffered from slow compile times and this seems to be a factor.

I'm guessing that most of the larger codebases out there will add "no var allowed" to their style guides within the next few years.

None of these feel particularly true to me, but in particular "less code is more readable" is just so clearly not true. If this was the case we'd all still be using Perl.

First, congrats on the launch! Glad to see more products in this space. Now, some questions :)

I've looked at many of the attempts similar to this over the years and while you hear "you don't need to know how to operate K8S" you are in fact operating K8S and when there's a problem suddenly all this complexity is revealed. If Heroku has a problem, it's pretty clear where the responsibilities lie, but with this it's your code but my deployment so I'm kind of on the hook. What are your thoughts on that?

How would you compare to something like app platform at Digital Ocean?

Thanks!

Tip for that situation: Since Heroku runs on AWS, you can just use a single RDS DB instance to serve as the database for a bunch of hobby instances. Really hard to beat the $5/dyno hobby pricing considering the feature set.

Does Render run on AWS? Or it's own servers? Having a little trouble figuring out things like that and what regions they're in etc. Looks cool though.

Would you mind linking to a couple of them? I don't know anything about Elixir (but am very comfortable in a lot of other languages), and am interested in the kind of thing more experienced people are using with Elixir. Thanks!

I've been programming Java since 1998 or so, and this may be surprising to some on here - but I still like it!

Here are the upsides in my mind, and as with all these things keep in mind - nothing's perfect! Everything has tradeoffs and I am making no absolute statements. Anyway, in no particular order:

  - Performance. It's possible for Java to be within 50-98% of the speed of even the most hand tuned native code, which is pretty remarkable considering the language comforts it provides.
  - Backwards compatibility. I have code that's 15 years old I still use. Programming hasn't fundamentally changed _that much_ in the past 20 years, but a lot of other languages act like it's changing by the year or even month. I deeply value not spending time fixing breaking language changes or dependency problems (for the most part).
  - OOP. I know we're in the cycle now where "OOP is a failure," but that's just wrong. Just like it was wrong when "OOP was the solution to everything." I don't go crazy with it, rarely use inheritance, use interfaces only occasionally, but do find it's nice to keep myself organized in terms of scope of code and responsibilities.
  - Typing. I know it's not perfect, but I really lean on the type system in Java. I think this might be because I'm a bit of a messy programmer to be honest, so this helps me keep a handle on things. When I work in Javascript I find things getting out of control quickly, whereas I can make statements about the entire codebase in Java that help me stay on track.
  - Tools. I've been using Idea as an IDE for 15 years or so and it feels like an extension of my mind. I can't even remember what the keyboard shortcuts are anymore, I just do them. It really helps keep the focus on the problem at hand rather than the details of implementation. We're finally coming out of the "IDEs are bad" cycle so I see more people using them again, that's good for everyone.
  - Simplicity. One major thing that people have forgotten with Java is that you can write simple code with it. It feels like the number one complaint is over engineered "AbstractFactoryImpl" codebases, and I hate those too. But it's also possible to write simple, easy to follow, understandable code.
  - Exceptions. I used to hate these too, then I had to write some code that _really had to work and handle everything_ and suddenly they were pretty nice.
In terms of downsides:
  - It's pretty bad for scripting. A lot of that could be fixed with extensions to the standard library that provided easy helper methods. We shouldn't be constructing URL objects for anything, just do it. I'm very jealous when I see a nice Python script for doing something with data from an API.
  - It does tend to want a lot of memory. This isn't as much of a problem anymore thanks to Moore's law, etc.
  - Library support for new services. People tend to write a Javascript, Ruby and Python library for everything, which is super nice. Java is not as common these days.
  - Some other stuff I'm probably forgetting right now, I'll update this if I think of anything else. As I said, nothing's perfect.
And in a general note: Don't underestimate the power of true expertise in a language. I find that in a lot of the cases when I'm reading about something new, it's hard for any upside to overcome deep experience. In that way, the best language for anyone is probably the one they know best, so maybe I'm biased.

I appreciate the author putting this post together. I am, however, having trouble squaring the overall positive tone of the piece with what seem like multiple show stopping problems. The bottom line I am taking away from this is you might not be able to ship your app at all if you use SwiftUI. Am I being too harsh? Or does that seem accurate?

I would guess so, although the size overhead for an optimized Flutter release build is now down around ~4MB, so not a determining factor for most use cases anyway.

I love to read about how StackExchange does things, it's such a stark contrast to the cloud maximalists. I'm not saying there aren't advantages to each camp, it's just nice to have a solid example on the "vertical scaling can actually get you pretty damn far" side of things.