Hacker Newsnew | past | comments | ask | show | jobs | submit | nobleach's commentslogin

I read Hacking Exposed around that time period. Up until then, my only "hacking" experience was with AOHell and everything that came along with that. It was interesting, but I wasn't really into the idea of trying to use CreditWiz to increase my odds of prison time. (I was a kid, I thought everything would lead to prison). Back Orifice just seemed like a great sysadmin tool!

We used this extensively when I worked in this space (2010 - 2014). My favorite addition was using https://github.com/topojson/topojson to add arcs. That cut down on quite a bit of points to represent curves.

Dang, fun memories of when I was first getting in to geo/data stuff and doing a lot of web mapping stuff with D3, Leaflet and friends. Seems as tools like Vector tiles/PMTiles have supplanted topojson for a lot of visualization oriented use cases.

I'm gonna have to dive into a rabbit-hole! I was working on an ESRI Shapefile to GeoJson converter back in those days. But D3 and Leaflet were such cool tech! MapBox too. Linking SagaGIS with PostGIS to do pre/post wildfire analysis was my jam.

Were you expecting "Got hacked, BRB"? I'm sure that page is their default circuit breaker.

I get that folks love a good Linus rant. But as someone who's been at the end of that style of "feedback", nothing can be more humiliating or demotivating. Certainly there are contributors that are making "rookie mistakes". There are folks that aren't willing to ingest the entire context of what was tried back in 2.0.36, 2.2, 2.4... etc. And perhaps it's wise to simply stay away until you're completely certain you've got the chops to contribute. More than half the folks that enjoy that sort of abuse don't have those chops.

I can defend someone who is unwilling to yield on quality. Afterall, this truly is his baby. Issuing scathing rebukes to well-intentioned contributors is like slapping my kid when he brings me the wrong type of screwdriver.


I don't think a Linus rant ever hit anyone that was a rookie, they are always AFAIK against people "who should know better". Veteran developers, with multiple commits merged.


> scathing rebukes

Would you be able to point one out?

> to well-intentioned contributors

This is a system used and relied upon by billions of people around the world. Your intentions, while good, are not material to the problem. Put another way we have an endless supply of people with "good intentions" but we don't enjoy the same largess of people with "good skills."


https://lwn.net/Articles/343828/ describes Alan Cox trying to fix the TTY layer, being trashed by Linus, and removing himself from the maintainer page.


I find it hard to call this a "scathing rebuke:"

https://lkml.org/lkml/2009/7/28/373

It also didn't just happen out of the blue. It's also true that Alan had already been working on the kernel for 15 years, was an employee of RedHat at the time, and his Wife's health was starting to fail.

If you follow the thread it goes back and forth across quite a few messages with frustration building on both sides with Alan ultimately deciding to step away from a single (and very hairy) subsystem.



If you're at the level of delivering to Linus, I'm sorry but humiliation and demotivation are earned.

You don't talk like this to junior or even senior engineers, but you do reach a level at which gently telling isn't necessary.

If you don't like it go fork Linux and try being the nice benevolent dictator and we'll applaud your success.


Code quality does not care about your feelings.


No, but code quality can suffer if you piss off all the competent people and they leave


That wasn't my experience at all. I had a recruiter screen where she asked me some technical questions. I then had a longer discussion, then a code screen, then an arch-deep-dive. The entire process was very professional and EVERY person came off like they really wanted me to succeed. (Sure it's an act but it's a very helpful act when you're in the hot seat)

My intervews were in 20202/2021. Perhaps things have changed?


Things have changed. I worked with a very senior and professional recruiter at FB during that time. While things didn't work out then, someone else reached maybe a year and a half ago for a fairly similar role -- massive difference, strictly a disposable drone style process and barely a conversation. I chose to not even start the process.

A sample size of one but many anecdotes together can make a trend.


2020/2021 might as well be ancient history in tech terms. Your experience does not reflect the current status quo at all.


I interviewed in the past 2 years and my experience matches the parent. Very professional and the interviewers were great to talk to. Same with Google.


This seems a bit ridiculous, that’s only 5-6 years ago. Things change, but the mechanisms and culture isn’t entirely different.


Back in 2020, $META was desperate to hire. Nowadays the tide has turned and interview process shifted accordingly. They are super picky now, even for those who nail every stage of the interview, folks are still routinely passed over.


Market was so hot SNL did a skit where Meta just started sending paychecks to people as a recruiting tactic.

That SNL skit never happened, but the market was so hot it could have.


Remind me, was there a major event 5-6 years ago?


If it was the exuberant period of overhiring from around that time, then you're talking about a different company who interviewed you back then


The recruiting process has barely changed since then.


I had an interview in 2024 and my interviewer was CLEARLY doing other stuff during the interview. So a very different experience.


My experience as well, both at Google and Meta. Very positive and well-organized. I also got feedback from the recruiter on each interviews.


You had interviews scheduled longer than 45 minutes?


It was my experience as well in Dec 2025


"My nephew makes websites, and he's 14... I could just have him do it"

- Every client of mine during my contracting days. It took me way too long to reply with, "Oh that's great news! I wasn't sure of my availability, and was certain I was going to be way too expensive. Glad you got it figured out."


I think the 14 year old nephew has been around for every iteration of technology - there are probably clients now threatening to just have their nephew vibe code the thing you're trying to spec out.

Once, when fed up with this during a discussion on a small moonlighting job I said "Yeah, kids are pretty good with this stuff these days, Tell you what - have him get started and I'll be available to give him any help he needs at 2x my rate".


Someone told me that in 2013 when I was trying to do contract work. I gave him a quote that I thought was reasonable, and he thought it was too much and he told me that his thirteen year old son could do it for free.

I responded that he was the one who had reached out to me, and if he feels like his son can do it then he shouldn't have wasted his time trying to find a contractor since that will be more expensive.

The client didn't like the attitude and I didn't get the job, but I was kind of glad because it was pretty clear to me that he would have tried to weasel out of paying me regardless.


Yeah, that's really the hard part of contracting. I was in my 20s and was certain I HAD to win every bid to keep feeding myself. I took longer than I should to realize that 3 worthwhile jobs is far better than 10 hassles. All clients required changes, most thought they were overpaying, and many gave me a hard time when the bill was sent. Meanwhile, when I'd toss out $20,000 as a price tag, those folks were far more serious, and they paid on time! It caused me to learn a valuable lesson. You want to quote high enough to offend the folks that aren't serious. They were gonna be such a pain.


I don't even think I was charging very much. I was still pretty junior in my career, so I think I was charging something like $40/hour, which was double my nominal wage at my previous W2 software job (doubled to cover stuff like health insurance and overhead and the like).

$40/hour is an extremely low rate for a software engineer, even at the time. I'm not sure what the guy was expecting, and I'm quite confident that he would have tried to weasel out of paying the second I delivered a product by claiming it didn't match his spec. Honestly I don't really think I'm ever going to contracts for small clients again regardless; a lot of them can get away with a SquareSpace site, and the ones that can't should probably spend their money buying a few courses on using Claude Code or ChatGPT.

There's also the fun scam of wannabe Steve Jobs characters. I had a person try to recruit me for a job where I worked for 2% equity in their business, where I was expected to write the entire codebase myself. Of course the remaining 98% went to them, and as far as I can tell they felt that their "idea" was just that valuable and didn't plan on contributing anything else. Fortunately, I didn't really fall for that one.


I still install it and play with it for a bit every other year. I really appreciate that it's held true to its own core. Yes it works with Wayland now, but it's still using its e-foundation libraries. I still wish I had screenshots of my desktop from 1998/1999. Downloading cool software from Freshmeat, hitting up Slashdot (news for nerds... stuff that matters) to see what was going on. Kinda wish I was into IRC back then but I was more of an ICQ->AIM chatter. It's an era I wish we could have back.


The perfect programming language has:

  - The compile speed of Go
  - The performance of Go
  - The single binary compilation of Go
  - The type system of Kotlin
  - The ecosystem of JVM (packages for anything I could dream of)
  - The document sytem/tests of Elixir
  - The ability to go "unsafe" and opt for ARC instead of GC
  - The result monad/option monad and match statements from OCaml/Gleam
  - A REPL like Kotlin or even better, OCaml
  - A GREAT LSP for NeoVim
  - A package/module system that minimizes transient dependencies
  - No reliance on a VM like BEAM or JVM
I still dream about this "one size fits all" language.


Common Lisp through SBCL fits this for everything but changing GC strategies. I'm not sure why you'd do that, though. SBCL's generational GC is faster in all cases, easy to reason about, and trivial to pause.

In many of these other categories, clisp exceeds requirements. The REPL and Doc situation is so good it's honestly worth it for those alone. People put up with `):'(,@ soup for good reason.


I luckily have the freedom to work with SBCL almost fulltime. It is a joy; shame most will never get to experience it (few jobs, parenthophobia etc).


Alright, you and your sibling reply have me wanting to look at it. I wrote Scheme/Racket when I was going through The Little Schemer and SICP. I'll buy a common lisp book. Any recommendations?


Common Lisp Is exactly that. I wish I could use it at work. All my personal stuff nowadays is CL only. There is no other choice.


I believe there are tradeoffs which is why this doesn't exist. Isn't the compile speed of Go so good because it's type system is much simpler?


Yes, programming languages are designed for a purpose and importantly for a concrete system. Erlang is the way it is because it was designed for Ericsson's phone network. C is the way it is because it was designed for the PDP-11. Logo is the way it is because is was designed for young children. Go is they way it is because it was designed by Google for Googlers.

You can't design an abstractly "perfect" programming language without any context. Which is why the author I think focuses on "perfectable", as in the language can be made perfect for your purpose but it's not going to be one size fits all.


No, I realize that. It doesn't stop me from having my "perfect language wishlist". The author calling out "perfectable" is what got me thinking. What language would I choose if I were able to "perfect" it just a bit more?


But you had called your list "one size fits all".


...in an imaginary world where we're still writing code, yes. It's a musing, not a directive.


One thing I like about TypeScript is that there's tooling for "quickly strip out the types and give me something I can run; I don't care if it's correct". You can run the (slower) type checker concurrently with that (or whenever it's convenient to do so), but type-checking doesn't necessarily block you from being able to play with runtime stuff.

I understand that this workflow can't be realized in languages whose runtime semantics are derived from type-level stuff, and while that can be quite convenient I'm personally willing to give it up to unlock the aforementioned workflow.


"Isn't the compile speed of Go so good because it's type system is much simpler?"

That, and forgoing fancy compile-time optimization steps which can get arbitrarily expensive. You can recover some of this with profile-guided optimization, but only some and my best guess based on the numbers is that it's not much compared to a more full (but much more expensive) suite of compile-time optimizations.


oh yeah absolutely. The moment you start blowing up Go with features (for example) the speed decreases dramatically.


"The compile speed of Go" - Delphi starts laughing


performance of Go - why not Fortran? type system of Kotlin - why not Scala/Haskell? Repl like Kotlin, why not Clojure?


> The result monad/option monad and match statements from OCaml/Gleam

Do you mean actual monads or just the specific result/option containers? If you mean a fully-fledged monad abstraction then you need a more sophisticated type system than what Kotlin provides (i.e. higher-kinded types).


Kotlin itself has opted for inline union types to represent error results: https://github.com/Kotlin/KEEP/blob/main/proposals/KEEP-0441...

The existing Result type was a mistake to expose to users, IMO, as it encourages exceptions-as-control-flow and error type hierarchies which complicate error-handling even further. The convenient `runCatching` API also completely breaks reasonable error-handling on the JVM and Kotlin's structured concurrency (which happens to use exceptions-as-control-flow to signal coroutine cancellation).

Overall, Kotlin is moving away from higher-kinded types in the core language, not toward them.


I'm not a frequent Kotlin user but none of that surprises me. My comment was asking about nobleach's imaginary "perfect programming language", which is clearly not Kotlin.


I'd settle for the Result/Option containers. Kotlin does have ArrowKt to attempt to achieve all the functional goodness of Scala. I think for my needs though, I'd appreciate Rust's "Result".


What do you like so much about Kotlin type system, and document / testing of elixir?


The type system of Kotlin? It's the same as Java + syntactic sugar for nullability. Don't pretend otherwise.


- The reach of JavaScript


It's always fun to realize that USENET is still out there humming along. I still remember the thrill of working on my ancient Delphi/Object Pascal projects, and posting questions... waiting a few hours and checking back for responses. There was no "instant gratification" in those days. (I wasn't really using IRC).

Opening this, and just searching "Delphi" I see that USENET never did get that "censorship" that I always assumed would eventually happen. The group names alone are truly unhinged. The Wild West is still.... wild!


the alt.devilbunnies vs alt.pave.the.earth "wars" kept me sane as a teenager. I miss the old internet.


Devilbunnies? Man, I haven't heard that name in a long long time. I used to be obsessed with reading all the stories in that universe. Never contributed anything though.


Imagine how odd it was to discover Usenet and find that someone else was already using your (offline) nickname for an entire universe of stuff. Early 90s.

It's mine here! I'll cede it to someone with the better online claim but only if you can prove you're not a Fudd in disguise.


I remember the epic flame wars with a certain game developer (who I wont name so as not to create drama here) whose starship simulator had a few bugs.


It's used for piracy a lot still.


Yup, in the 2005ish era, I found that I was downloading albums just because I could. Some I never even listened to! I got rid of my EasyNews subscription because it all seemed so silly to me.


80 miles for me! I was a Space Shuttle era kid though. Saw the Challenger disaster during my lunchtime. And then on perpetual replay for the rest of the week on WESH/WCPX/WFTV most likely. Even still, just knowing we were launching all those people into space was awe-inspiring.


TBH, I was probably closer to 80 miles than 60 before we moved. to Daytona... Flagler Beach. You?


Heh, Ormond Beach first, then Flagler - Palm Coast (FPC - go, fight, win!)


Funny, I am an FPC Bulldog, class of '80, then moved to Ormond to go to DBCC.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: