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

When did we all stop using telnet? I can't even remember. Most of my first 10-15 years was using telnet. One day I used telnet to connect to a shell for the last time and didn't know it. I had a ton of servers all with root telnet access Internet facing. Never hacked once, somehow. Those were the days.

In the Linux / BSD world, SSH took off incredibly fast for the time. I'd estimate that maybe 80% of people had moved to it within the first year of its release.

But adoption stalled when the original SSH moved to a commercial license in 1996-ish - many of us stuck with the last free version, but vulnerabilities started to pile up. There were various half-working alternatives, but it wasn't until OpenSSH came out in 1999 that the remaining telnet holdouts started to move across.


It was 1996 for me. I forget where the original SSH (SSH1 protocol) came from, but I do remember compiling it on a Slackware box around that time.

I worked for an ISP in the mid-90s and had been on the Internet since 1989 or so. I recall the progression for me was something like this:

We used telnet in college no problem. It was a fairly well-accepted method of remote access. The heterogeneous network had many different modes, but a major dialup point was the Annex box, which supported telnet into the Unix or VMS machines.

Between Unix machines, we would often prefer "rlogin" instead. There were several horrific iterations of other remote-access protocols such as "remsh". rlogin was notorious for its "/etc/hosts.equiv" authorization method which trusted DNS and should've been perceived as Swiss Cheese from the outset. rlogin was, IIRC, directly related to rsh and rcp and used the same frameworks. rlogin was no more secure than telnet, but probably less secure because of its conveniences.

We also used port 23/tcp for remote management, for example Cisco routers. They weren't running telnetd, but it was the port where you connected remotely and logged in with or without credentials.

rlogin persisted alongside telnet, until encryption came into fashion and ssh was distributed. Once ssh was available and working well, everyone knew that telnetd and rlogind were on borrowed time. The services were shut down and disabled in inetd. The ports were sometimes blocked. Security advisories went out.

I suppose it took a long, long time for ssh to finally dominate, and for people to abandon telnetd mostly, but it was fairly thorough. We all recognized the superiority of sshd's authentication and encrypted channels.

There were mitigations for people to extend their legacy use of telnetd and rlogind. For example, tcp wrappers and fail2ban could be implemented. Firewall filters could select only authorized networks. VPNs could tunnel through an Intranet that still used them. So, the services lived on wherever they didn't need to be exposed on the public Internet. But I think most Unix admins got the picture by the end of the dot-com bubble.


> /etc/hosts.equiv

Ah, the memories.

cat '+ +' >> /etc/hosts.equiv


Ah, I have no memory of such a command, so I must be getting old!

All the damned power lines in Chicago seem to be above ground on poles in the alleys. They were always breaking. It was infuriating coming from a place with buried lines.

I live in literally the middle of nowhere and get very bad winters but I lose power less often than I ever did living in the center of Chicago which often lost power for days at a time due to the weather.

I just learned first hand what to do with frozen pipes. Couldn't stop it this year as it went so far below zero. On the last day before it warmed up one of the pipes split and put about 2ft of water into the basement. Amazing to see the damage to the CPVC pipe that broke -- like it literally exploded, which it probably did.

You should have a shutoff valve on every pipe that goes through an external wall. Before bitter cold like that, turn off the valve and drain that pipe. If it is supplying an outdoor spigot, that shutoff should just be part of your winter prep.

(And yes - I, too, learned that the hard way.)


Living in a place that often drops down to insane temps, I am also obsessed with watching the YouTubes from there.

AIs have made me realize that I don't actually care about writing code, even though it's all I've done for my entire career.

I care about creating stuff. How it gets from the idea in my brain to running on the computer, is immaterial to me.

I really like that I go from idea to reality in half the time.


Same here, and I also really enjoy the high level design/structure part of it.

THAT part doesn't mesh too well with AI, since it's still really bad at autonomous wholistic level planning. I'm still learning how to prompt in a way that results in a structure that is close to what I want/reasonable. I suspect going a more visual block diagram route, to generate some intermediate .md or whatever, might have promise, especially for defining clear bounds/separation of concerns.

Related, AI seems to be the wrong tool for refactoring code (I recently spent $50 trying to move four files). So, if whatever structure isn't reasonable, I'm left with manually moving things around, which is definitely un-fun.


    > …I suspect going a more visual block
    > diagram route, to generate some
    > intermediate .md or whatever, might have
    > promise, especially for defining clear
    > bounds/separation of concerns…
Can confirm [1]

So can my automaton bud [2]…

_____

MODEL

The Verdict: If you provide a clear instruction like "Before you touch the code, read architecture.puml and ensure your changes do not violate the defined inheritance/dependency structure," the agent will be very effective at following it.

If you just "hope" it bears it in mind, it probably won't.

_The agent is a tool, not a mind-reader; it will take the shortest path to a passing test unless you wall that path off with your architectural models_.

To make it actually work, you need to turn the UML from a "suggestion" into a "blocker." You should add a section to your AGENTS.md (or CLAUDE.md ) that looks like this:

    1. Tool Trigger: By using words like "…"

Why this works:

_____

[1] https://news.ycombinator.com/item?id=46935979

[2] https://g2ww.short.gy/TheMightyBooch


Definitely go for that middle step. If it's something bigger I get them to draw out a multi-phase plan, then I go through and refine that .md and have them work from that.

Same.

I've been exploring some computer vision recognition stuff. Being able to reason through my ideas with an LLM, and make visualizations like t-SNE to show how far apart a coke can and a bag of cheetos are in feature-space has been mind blowing. ("How much of a difference does tint make for recognition? Implement a slider that can show that can regenerate the 512-D features array and replot the chart")

It's helping me get an intuitive understanding 10x faster than I could reading a textbook.


Thing with factories, is that only like 25% of the original employees are left to take care of the belt, and remaining actions not covered by the robots.

Everyone is hoping to be part of those 25%.


They still have a niche. Their style references feature is their key differentiator now, but I find I can usually just drop some images of a MJ style into Gemini and get it to give me a text prompt that works just as well as MJ srefs.

Capital One just switched too.

https://investor.capitalone.com/news-releases/news-release-d...

They didn't just switch. They purchased Discover.

edit: added the "just"


Well, “just” as in “recently forced everyone to replace their cards” also works. My CapitalOne mastercard was deactivated January 14, even though it was still valid through 2030.

This X 100.

I've learned with LLM coded apps to break stuff into very small manageable chunks so they can work on the tiny piece and not get screwed by big context.

For the most part, this actually produces a cleaner codebase.


LLMs have made a huge transformative change in my coding. For some projects 95% of the code is written by LLMs. This is all on internal projects and internal tools right now, though, because on the external projects I'm still easing into using it in a very carefully curated way, e.g. a method or an algorithm at a time, rather than a 10KLOC folder full of class files. These internal products are 95% of the work being done, though. It's just that they are under tight control when they are running locally and bugs and crashes are immediately visible and it's easy to debug and deploy fixes, unlike with say web-based stuff on a remote server.

So, I've very little to publicly show for all my obnoxious LLM advocacy. I wonder if any others are in the same boat?


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

Search: