frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Get the location of the ISS using DNS

https://shkspr.mobi/blog/2025/07/get-the-location-of-the-iss-using-dns/
41•8organicbits•1h ago•15 comments

Overthinking GIS (2024)

https://scottsexton.co/post/overthinking_gis/
60•todsacerdoti•5h ago•15 comments

Hidden interface controls that affect usability

https://interactions.acm.org/archive/view/july-august-2025/stop-hiding-my-controls-hidden-interface-controls-are-affecting-usability
481•cxr•14h ago•305 comments

Local-first software (2019)

https://www.inkandswitch.com/essay/local-first/
740•gasull•22h ago•243 comments

Serving 200M requests per day with a CGI-bin

https://simonwillison.net/2025/Jul/5/cgi-bin-performance/
201•mustache_kimono•13h ago•143 comments

Take Two: Eshell

http://yummymelon.com/devnull/take-two-eshell.html
49•nanna•3d ago•28 comments

July 5, 1687: When Newton explained why you don't float away

https://multiverseemployeehandbook.com/blog/when-newton-explained-why-you-dont-float-away/
64•TMEHpodcast•9h ago•56 comments

Eastern Baltic cod grow much smaller than they did due to overfishing

https://www.smithsonianmag.com/smart-news/these-cod-have-been-shrinking-dramatically-for-decades-now-scientists-say-theyve-solved-the-mystery-180986920/
216•littlexsparkee•18h ago•70 comments

Show HN: I made Logic gates using CSS if() function

https://yongsk0066.github.io/css_if_logic_gate/
37•yongsk0066•3d ago•7 comments

What a Hacker Stole from Me

https://mynoise.net/blog.php
215•wonger_•15h ago•54 comments

How to Network as an Introvert

https://aginfer.bearblog.dev/how-to-network-as-an-introvert/
236•agcat•16h ago•87 comments

Six months into congestion pricing, more cars are off the road

https://ny1.com/nyc/all-boroughs/traffic_and_transit/2025/07/05/six-months-into-congestion-pricing--more-cars-are-off-the-road--report-says
12•geox•1h ago•2 comments

The Mystery of People Who Speak Languages

https://www.newyorker.com/magazine/2018/09/03/the-mystery-of-people-who-speak-dozens-of-languages
9•rbanffy•3d ago•1 comments

Can we test it? Yes, was can [video]

https://www.youtube.com/watch?v=MqC3tudPH6w
22•zdw•3d ago•28 comments

Development of a transputer ISA board

https://nanochess.org/transputer_board.html
39•nanochess•2d ago•3 comments

Show HN: BreakerMachines – Modern Circuit Breaker for Rails with Async Support

https://github.com/seuros/breaker_machines
7•seuros•3h ago•1 comments

Europe's first geostationary sounder satellite is launched

https://www.eumetsat.int/europes-first-geostationary-sounder-satellite-launched
200•diggan•23h ago•43 comments

macOS Icon History

https://basicappleguy.com/basicappleblog/macos-icon-history
205•ksec•22h ago•79 comments

The force-feeding of AI features on an unwilling public

https://www.honest-broker.com/p/the-force-feeding-of-ai-on-an-unwilling
149•imartin2k•7h ago•137 comments

Volvo delivers 5,000th electric semi

https://electrek.co/2025/06/29/volvo-delivers-5000th-electric-semi-with-little-fanfare-sending-a-big-message/
190•JumpCrisscross•11h ago•111 comments

"Swiss Cheese" Failure Model

https://www.bookofjoe.com/2025/07/swiss-cheese-failure-model.html
16•surprisetalk•3d ago•10 comments

ClojureScript from First Principles [video]

https://www.youtube.com/watch?v=An-ImWVppNQ
84•puredanger•3d ago•19 comments

Optimizing Tool Selection for LLM Workflows with Differentiable Programming

https://viksit.substack.com/p/optimizing-tool-selection-for-llm
103•viksit•16h ago•34 comments

Speeding up PostgreSQL dump/restore snapshots

https://xata.io/blog/behind-the-scenes-speeding-up-pgstream-snapshots-for-postgresql
130•tudorg•20h ago•33 comments

Yet Another Zip Trick

https://hackarcana.com/article/yet-another-zip-trick
70•todsacerdoti•4d ago•20 comments

The most otherworldly, mysterious forms of lightning on Earth

https://www.nationalgeographic.com/science/article/lightning-sprites-transient-luminous-events-thunderstorms
6•Anon84•51m ago•1 comments

Techno-feudalism and the rise of AGI: A future without economic rights?

https://arxiv.org/abs/2503.14283
177•lexandstuff•16h ago•146 comments

On latency, measurement, and optimization in algorithmic trading systems

https://www.architect.co/posts/how-fast-is-it-really
38•auc•3d ago•18 comments

Are we the baddies?

https://geohot.github.io//blog/jekyll/update/2025/07/05/are-we-the-baddies.html
434•AndrewSwift•8h ago•272 comments

Four integers are enough to write a Snake Game

https://www.andreinc.net/2022/05/01/4-integers-are-enough-to-write-a-snake-game
11•wonger_•3d ago•4 comments
Open in hackernews

Injection Rejection (2006)

https://thedailywtf.com/articles/Injection_Rejection
40•dontTREATonme•10h ago

Comments

delifue•10h ago
This is a common example of not fixing from root cause and try to fix from "outside valiation" that has bad side effects.

The correct way of fixing SQL injection is to use prepared statement and parameters.

Other examples: Windows allows software to do bad things, having no proper permission control (to maintain compatibility). Antimalwares scan applications by matching patterns of virus code, but has many false positives and false negatives. This causes many troubles (kill innocent software, scanning cost performance, etc.) because it does not fix from root case (proper permission management).

userbinator•10h ago
Somehow, escaping is beyond the comprehension of many people, yet I find it a simple and straightforward concept.
jagged-chisel•9h ago
Doing your own escaping is digital whack-a-mole. Let the experts who wrote the prepared statement interface handle it. The knowledge of a team and/or years of experience compressed into an interface that’s trivial to use.
ameliaquining•9h ago
Parameterized statements don't actually abstract over escaping; they entirely obviate the need for it, by moving the untrusted data out of band.
jagged-chisel•1h ago
It’s the safest interface to your database query engine no matter how it does the job. That’s what matters.
ameliaquining•9h ago
Escaping isn't always straightforward. Or rather, it is in simple languages or in languages that are designed to make it straightforward, like HTML, but in SQL it's surprisingly tricky, and subtle bugs in escaping routines are an occasional source of vulnerabilities. E.g., https://stackoverflow.com/a/12118602. This is why modern best security practice is to use parameterized statements instead.
matsemann•6h ago
There are so many foot guns, just don't do it.

Php users tried with addslashes(), realized there are cases it can't handle, made a sql variant in mysql_escape_string, realized it's open for abuse since you can mess with the character set. Then made mysql_real_escape_string and later mysqli_real_escape_string, which even them have some flaws depending on the db charset.

So if you find the concept easy, I'd wager it's because you don't handle some exploit path.

abanana•3h ago
The simplest aspects of the concept of escaping are beyond the comprehension of some people.

Several years ago, I showed a colleague that in the simple file-storage web app he'd written, just changing part of the URL from e.g. "/folder/23/" to "/folder/23 OR 1=1" would show every file ever uploaded by any user, ever. (He hadn't even added a clause to limit it to the logged-in user, but that's another matter.)

He was taking that folder number from the URL, passing it through mysql_real_escape_string() because he'd simply learned by rote that that's how you make any user input safe, then concatenating the SQL, without putting quotes around the variable in the query because it's meant to be an integer: "...WHERE folder_id = $folder_id".

It didn't matter how I tried to explain things, he just didn't get it. He still works there (I left, I'd had enough) - his job title is "senior developer".

rileymat2•9h ago
Can you say more about proper permission management?

If we are talking about ransomware running in a user context, it'd have the permissions of the user to encrypt anything the user has access to.

If we are talking about extreme sandboxing, you make it hard for programs to work together without permission fatigue, or the user having no idea what they are allowing or getting used to allowing all permissions.

AdieuToLogic•10h ago
Ah yes, it would seem little "Bobby Tables"[0] strikes again.

0 - https://xkcd.com/327/

userbinator•10h ago
At least they didn't offer to "correct" the offending text, turning it into a clbuttic bug.
mjcohen•9h ago
(This has nothing to do with the post, but the title is so similar that I had to include it. Written a few days after seeing "Inception".

Inception Rejection

(Why the dreams-within-dreams in the movie "Inception" could never happen as shown even if the technology worked as described.)

((Though this would have been a lot easier to do as an essay, the poeming was challenging and fun.))

The basis of "Inception", although it may leave you confused, is that in the brain while waking only five percent is used.

To process things in daily life this certainly has been plenty. That mental surplus means our dreams go faster by a factor of twenty.

The magic device that drives the film (the idea's at least sixty years old) allows dreams not only to be observed but changed as they they unfold.

When this device is dreamt of, unlikely as it seems, if used like in the real world, the result is dreams within dreams.

Inception's filled with dreams in dreams, each twenty times faster than before. Unfortunately, here's the problem this movie does ignore:

Level one's dream factor is twenty; four hundred at level two. Level three's factor's eight thousand - two hours there is less than a second for you.

In the first dream at twenty times the brain goes at full speed; there's no excess capacity that the next dream down would need.

A dream in a dream can only be dreamt by the real brain at the top. The faster brain that's in the dream is no more than a prop.

To go faster by four hundred, the dream at level two would need a brain twenty times as fast as the one you carry with you.

So the speed of the dreams that are further down could be no faster than the dream that's first. A quite ingenious plot device here has its bubble burst.

nine_k•9h ago
There is a Russian proverb (hi Mr Reagan!) which states that a cheapskate pays twofold. I suspect that the cost of this "overseas" project could easily cost 20x the low, low sticker price.
bigiain•8h ago
Been there, done that.

I have old paperwork for significant shareholdings in 3 extinct companies I worked at that tried to outsource all development. Out of 6 or 7 major outsourced projects I was involved in or responsible for, only one could be classified as "successful", a couple more ended up with somewhat usable code/systems that met requirements (mainly due to them being poorly written) but which were unmaintainable and replaced within 12-18 month timeframes. The rest were all complete throwaways and represent low 7 figures worth of money completely wasted (with, perhaps, the exception that I and others learned new ways that outsourcing can go wrong and a bunch of useful war stories.)

As I see it, when (most) companies have an in house dev team, what they _actually_ have but do not understand (at senior management levels) is a Solution Architecture and System Design team, a software development team, and a QA and Test team - all of which are likely to be the same people who do not have those roles listed on any org chart or job description.

Realistically, the best you can possibly hope for is to outsource the non team lead parts of the software development, and _maybe_ some of the testing work (if your in house QA is on top of things).

The "50% cheaper" off shore dev team is, in my experience, at best capable of doing something under half of what a typical in house dev team does. Given that the management and oversight of the off shored development and testing work needs to be done in house, and cannot possibly be done in the company's best interest by the offshore devs or an outsourcing company, you are going to need to retain in house staff to do those roles - and they're going to need to be the more experienced and more senior people from your existing in house team.

Anybody who thinks "half the hourly rate" translates to "half the cost for the entire project" has clearly never done it before. At best, you are going to be able to outsource 50% of the work. So at best you can save perhaps 25% of the development costs, and that requires you to have some very good inhouse technical skill who are experienced in system design and architecture, writing unambiguous requirement docs and User Acceptance Tests, and who have seen the sort of "tricks" outsourced developers do to pass tests instead of actually writing secure stable and maintainable systems.

donatj•8h ago
We had a project in an old but perfectly serviceable framework. The application was working fine, we just wanted some basic regular maintenance, and corporate decided we should outsource it as we didn't have a lot of time between us.

We gave the external team explicit instructions that they should continue to use the existing framework, as they'd asked to rewrite it in a newer framework. Just add simple features and maintain what's there.

The project comes back very troubled, barely working and just feels janky. Things that have worked fine for a decade are broken. None of us look at the code, as that was the goal, but instead we just keep sending back revisions. Every time they fix something, something else breaks.

Well after multiple rounds of back and forth failing to get a very basic form working correctly, we decide to dig in and fix it ourselves. We discover that instead of using the existing framework, they'd written a giant janky adapter layer translating their framework of choice to satisfy the existing framework. It completely undermined the point of keeping the existing framework which was to keep changes to a minimum. We wanted maintenance, not a rewrite.

The whole codebase was a confused mess no person in their right mind would want to maintain. I have never been so frustrated in my life. After we confronted them about it, and they adamantly defended it, we ended up firing them.

kgeist•5h ago
It's more common than you'd think, even today. A lot of sites I recently explored leave SQL injections as is (you can see the typical MySQL errors) and rely on some kind of "security plugin" provided by a third-party for their framework of choice which checks if a URL contains something which resembles an SQL injection attempt (such as "UNION SELECT" in query params).
adxl•4h ago
All your injections are belong to us.