HNHacker News
TopNewBestAskShowJobs

pech0rin

1,373 karma · joined October 29, 2014

[ my public key: https://keybase.io/sjohnson540; my proof: https://keybase.io/sjohnson540/sigs/xEXo7WPCe02aF6wnxw3nNS08h8hvSoGi6zziyigVrWg ]

Running https://devscoach.com sam@devscoach.com

submissionscomments
pech0rin··on Show HN: HelpHub – GPT chatbot for any site
Tested out the landing page chatbot and got one “We couldnt find an answer to your question” and another request timeout. Not confident at all using this with any product.
pech0rin··on Don Knuth plays with ChatGPT
What is the obsession with treating ChatGPT like a human? Its not a human its a tool that was created to “reason” about large swaths of data. I don’t understand the backlash people have about some reason needing to be polite to the algorithms. It was be much easier to interact with just extremely direct, non polite language. Not sure why we care about this
pech0rin··on Show HN: We built a ClickHouse-based logging service
“Deploy a hobby instance in one line on Linux with Docker (recommended 16 CPU cores, 32GB RAM, 256GB disk”

Cant say I would call these specs “hobby” at all

pech0rin··on Show HN: Gut – An easy-to-use CLI for Git
Seems like a cool project. Even after 15 plus years of using git I still get tripped up with some of the naming. I didnt check the internals but you mention not being able to rewrite if you push to remote. I think this is sort of a mistake because git has the lovely push force-with-lease that only force pushes if no other modifications have been made to the remote which is quite useful in a lot of scenarios
pech0rin··on What we learned after I deleted the main production database by mistake
Process seems like it didn’t really improve in the end. Obviously being arm chair ops right now but using postman for business critical updates of your very important search index seems inherently bad. I understand wanting to run one off commands but thats why having a script is super nice. Elasticsearch had libraries in most languages and the difference between a misclick on Postman and typing out “delete_index” is readily obvious and could be caught more easily in code review. Either way it sucks and hindsight is 20/20 but definitely avoidable.
pech0rin··on [dead]
Teenage angst is a hard thing. Maybe live your life and worry about running a business when you have some more life experience
pech0rin··on Ask HN: Can I see your scripts?
Not mind-blowing but I use it all the time to loop a task a certain number of times. I always forget the bash command for loops so I just wrote a simple command where I can run `loop 10 ./this-other thing and stuff` to loop ten times.

loop() { NUM=$1 shift for i in {1..$NUM}; do "$@" done }

pech0rin··on DRY is an over-rated programming principle?
Not sure why this is on the frontpage. Not only are there a bunch of typos, a bunch of code doesn't actually work the way they said it does. Also gotta love hating on the 10x developer or whatever for saying you are wrong.

EVERYTHING HAS TRADEOFFS. Every single thing has tradeoffs. Obviously you should not write terrible, brittle code. The reason DRY is important is because when you start duplicating code, having 30 different serialization methods littered throughout your code, 5 different ways of calculating the same value, etc etc you see why it really matters. Its a GUIDELINE used to as a general rule. And as guidelines and general rules go -- its useful for juniors and people who don't have the experience to see the best way to write the code.

Its a good default, and like YAGNI, and 100 other programmer acronyms it has its ups and downs. Your pizza example is not "coincidental repetition" -- it is actual repetition -- you just abstracted it in a really poor way to make a strawman.

pech0rin··on Emacs’s Builtin Elisp Cheat Sheet
Mastering emacs is an amazing resource and one I have used countless times over the years. I have used emacs since my time in college (~14 years ago) and I still discover new things about it -- a lot from "mastering emacs". Anyway, thanks for all the great content!
pech0rin··on How To Know Everything
I hear this a lot "don't share similar experiences" when reading sort of articles about this. I agree saying "the same thing happened to me so its not really a special experience" with a positive experience then you are being sort of grating.

But if its a negative experience or something where you are trying to actual support someone or relate to them in a time of trouble, then empathizing by expressing a similar experience is actually helpful. In the depths of grief it is nice to be able to relate to something, because in those times it can feel very very lonely.

Anyway, I am not saying the author is wrong. I think it's important to know the difference, but I am wary of the advice saying to never share your similar experiences in conversation.

pech0rin··on Development Environments
I dunno. I have used a lot of IDEs in my day but I always go back to emacs. I know its not for everyone but I can still have a running python, ruby, etc process and send bits of code to the process and interactively iterate on ideas smoothly. Also with the advent of language servers jump to definition, large refactoring of symbols, etc are pretty straightforward.

The number 1 thing I hate about IDEs and will always hate about IDEs is that you open a "workspace" you cannot access all of your files at once. So often I am working with multiple git repos or various things scattered around my computer. In emacs I can simply open the file and have all the syntax highlighting, linting, etc just work. Instead of waiting for 10s for a whole new IDE workspace to open. And then not even have the ability to switch between them easily.

Anyway, I don't think I am Luddite and I try to love modern IDEs and editors because everyone says how much more productive they are in them. I honestly have to think that editors are not whats holding back software development, and seems disingenuous to say shying away from them is somehow negative.

pech0rin··on Rust advocacy at a medium-sized startup
Yeah this is definitely a leadership mistake. It's hard to say no to people that are really enthusiast about things like this (which obviously the author is), but its doing such a disservice to the business and their career by letting them spend so much time on this.

It seems obvious from the start this is never going to go anywhere. You already are using 4 languages at this company (PHP, Go, Python, JS/TS) ? Adding another is essentially a waste of time and a huge distraction away from the core function of a engineer which is delivering value to the customer.

pech0rin··on We Put Half a Million Files in One Git Repository, Here’s What We Learned
So every company ever? I love these comments like hindsight is not 20/20 and it would have been so simple for you to have made all of the right engineering decisions as an armchair CTO. Give me a break. Git repos get out of control, bad decisions are made, this is an interesting solution and write up. So over the whole “just make perfect decisions all the time and you would never need X comments”. Guess what? Everybody makes mistakes
pech0rin··on GraphJin – GraphQL to SQL Compiler
Maybe this is a dumb observation but at this point whats the point of even having a backend or graphql (except for maybe authentication). If you are mapping the graphql to sql why not just send direct sql commands. If you arent adding anything extra whats the point of even using it. Just query SQL from frontend
pech0rin··on HelloInbox – Ultimate email deliverability checklist and toolkit
Plenty of services could use that. Think of any large scale service that does email notifications.
pech0rin··on Why companies move off Heroku (besides the cost)
You can easily use pg_dump to do a "vanilla" backup to s3. Its a managed db service but if you wanted to run your own you can extract your data and move to a new db. The lock is not "complete" you are acting like you can't even extract your data.
pech0rin··on Why companies move off Heroku (besides the cost)
What do you mean? RDS lets you run replicas
pech0rin··on BYOT: Bring your own team for new-grads
I think its a cool idea, but unless this is aimed at large tech companies (which maybe it is, I can't tell), I can't see the value here. I know you are from highly sought after school but to be honest the working industry of software engineering is very little like your college experience.

You are not going to be hired as new grads to be writing proofs using turing machines. You are going to be thrown into the grinder of (most likely) web application development & software engineering (which you may have taken a class on, but is nothing like the actual experience). Working as a professional software engineer requires so many things not taught in school that the only way to learn this stuff is through experience.

I am not trying to sound like a old bastard but you are over-valuing your hand. Competitive programming, FAANG internships, are all great but its not the same as actually having a job. The hiring shortage is mainly senior engineers and if you were offering an app for senior engineers to find a job together I could see that really paying off, but for new grads I don't see the employers going for it.

pech0rin··on JSON Resume
I have the absolute opposite reaction when filtering resumes. I just want something plainly written on 1 page so I can get a feeling for your career. Why do I care if you can format a document in a pretty way? Has literally nothing to do with what a resume is which is explaining your experience and why you would be a good fit. Filtering by style seems like a great way to filter out great candidates
pech0rin··on Arrests of a Yakuza Leader and Affiliates for Narcotics and Weapons Trafficking
Obviously this is a "bad person" and I do think they should be arrested, put in Jail, but... isn't this entrapment? I mean this guy UC-1 obviously brought up "hey you guys wanna buy some SAMs", and then they were arrested. I am curious if this is because the weapons charge would be a longer prison sentence than drug trafficking or they couldn't bust him on that without creating this situation.

Again, obviously this person should be behind bars, but this method of manufacturing scenarios seems somewhat insane to me. Maybe I am misinterpreting the release but thats the way it seems.

pech0rin··on An Intro to Python Flask
Thats not a trick, every version of software eventually reaches EOL. Thats why there is semantic versioning, etc. What do you think happens when security vulnerabilities are found in a version of software. Your comment is meaningless.
pech0rin··on Infrastructure as Code Should Feel
Why is the “how” cut off at the beginning of the article title. Makes it really confusing without it.
pech0rin··on Spin – WebAssembly Framework
Thanks for the response. Lunatic seems like a really interesting piece of software. Allowing you to run anything that compiles down to wasm seems like an awesome opportunity for a platform to solve some of the headaches of current serverless setup.
pech0rin··on Spin – WebAssembly Framework
Ah that makes a lot of sense! I wasn't connecting the dots with the language interop. That seems very cool. Thanks for the explanation.
pech0rin··on Spin – WebAssembly Framework
I am sure this has been answered before, but a quick google search didn't really clear this up for me but... I don't quite understand the usage of WASM on the server side (not denigrating, just looking for an explanation). If you are using rust, can't you just compile it down to a binary and run that on your server? Or is the main advantage the sandboxing? Or is the idea you have a bunch of wasm compatible servers and then you can just schedule a bunch of different wasm programs on a server no matter what language you wrote it in?

Is the workflow: Build app in rust, compile it down to WASM, and then run it on a server with wasmtime? I think I am missing some step.

pech0rin··on A magical AWS serverless developer experience
so this company with 7 developers has the same amount of resources as amazon?
pech0rin··on A magical AWS serverless developer experience
This sounds like an interesting setup, but honestly my alarm bells are seriously going off in terms of cognitive load for every developer. I would love to see how much time is spent on ops at this company vs actual dev time. Also once they are hitting scale I am really interested how all of this holds up. You have 7 devs now, what happens with 20 devs on different teams.

Also since this is a beta product, I am doubting that you would hit too many problems with any deployment solution at this point. Why are you using Aurora + serverless + event bridge at all? Its magical because you are all using the same dependencies as prod, but why are you using these dependencies at all? All you need is a single postgres database (easily spun up on any developer machine) + crud app (easily able to use full stack typescript with nextjs or the like).

Word of caution about having this many moving parts, they will bite you in the ass. Now it seems all rainbows and magic but there is a reason people on this website preach simplicity -- because when shit hits the fan the simple solutions are easy to debug and fix without spending 1000s of dev hours. The complicated magic solutions are the ones that cause 24+hr downtimes and need to be re-architected. You are a customer service tool, not a devops company, the choices here don't make too much sense.

pech0rin··on Building a no-code toxicity classifier by talking to GitHub Copilot
echoing a bunch of comments but this seems sort of like a nightmare. its like the classic “dont use comments that are exactly what the code is doing”. basically you are requiring writing this type of boilerplate comments which are completely useless but are now so the machines can write the code for you. i guess if you could have some tool that auto-removes these comments afterwards it wouldn’t be terrible but i just see this as a way to have people completely forget apis and then not actually be able to find more powerful tools in a language just living on the rails that copilot provides for you. overall seems like a step backwards, especially if newer devs use this as a crutch when jumping in. now we have a generation of devs who dont actually understand the way things work.

i guess stack overflow has a similar problem but at least there people provide documentation, explanation, and helpful links. this just force feeds you some code. i dont see this as a positive movement for our industry as a whole

pech0rin··on The Big TDD Misunderstanding
Quite a few people are saying it doesn’t work. I have worked on TDD codebases where anytime you changed a function or tried to refactor something trivial it took 3x the amount of time to fix the tests even though the code worked correctly as written. This is due to mocking or naming or expecting functions to never change. TDD proponents would say that is the “wrong” way to do it, which Im sure it is but that doesn’t stop it from happening and killing productivity.
pech0rin··on Ask HN: Is software engineering heading towards obsoletion?
Not at all. We have barely scratched the surface of what computers can accomplish and all of that will require programmers. Comment’s mentioning AI obviously haven’t spent much time actually working on AI projects because it is a long time away from being able to even develop simple crud applications without developer intervention. Software Engineers will have jobs long after you and I are dead
← PreviousPage 3 of 5Next →