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

I used to work in investment banking in the city of London and later in Canary Wharf. I loved working in the city as it was a beautiful old place, people were very social and having 2-3 hour boozy lunches with someone who you might do business with one day wasn't a rarity (mind you, I moved out before covid, I understand things have changed quite a bit).

Then I switched jobs and ended up in Canary Wharf. For those who don't know it, Canary Wharf is a newly built finance district in the London Docklands. If you've been to Singapore, Dubai, La Defense in Paris or Songdo in Korea, you know the kind of place. Everything is clean, new, modern. Everything has 90 degree angles. Everything has cameras, security guards and cleaning stuff. What it doesn't have is any resemblance of a real city, any organicity or soul.

I hated it. Every morning I saw the streams of suite dressed worker drones pouring from the tube directly into their office towers (Canary Wharf has a huge underground shopping mall/railway station that allows you to go from the subway directly into your office without ever seeing the sun).

I was unhappy. So I did similar things to the OP. I got up earlier and walked there. (I lived in Mile End). It was a nice walk along the canal for a while and then a not so nice walk through smog and traffic, but I didn't mind. I took my lunch outside on the remaining docks. And finally, I got up so early that I arrived an hour before work began.

I spent this hour in a Cafe. Alone. Having breakfast. I loved this hour. I sat there, as the only one not rushing in, getting their "strong capo", beeping their card against the reader and rushing out. I observed the grey and black dressed stream of people. I day dreamed.

It helped - for a while. It was a band aid before I left London all together and moved to Berlin. But most of all, it is a uniquely calm and joyful experience. It decelerates you. The boheme in Paris or Prague has long figured this out. Sit in a cafe. Enjoy a coffee or a glass of wine. Look at people. Daydream. Reflect, be enough - there's a lot to it.


You should do more writing! I really enjoyed this and the way you write!


Yes, sir, blog away, we need your wisdom.


Another +1. You have a really nice writing style!

Singapore to a tea. Spooky that I had a similar path, Sydney -> HK -> New York -> Singapore. Crescendo-ing up to New York, then off a cliff into a full blow school-like world (but great trains).


I'm starting to think I'm the only person in the world who loves La Défense.

It was a privatization in name only. The German state held 100% of its shares since the beginning. As such, it might have no longer been subject to the state specific demands of hiring etc. - but instead found itself in an uneasy tension as the only supplier of services to an entity that was something between a customer and a shareholder.

Which brings up an interesting question: How do you structure something with a large piece of infrastructure like a rail network in a way that could benefit from the market forces of competition and innovation?


> Which brings up an interesting question: How do you structure something with a large piece of infrastructure like a rail network in a way that could benefit from the market forces of competition and innovation?

A rail network is near to a natural monopoly. You can build overlapping rail networks, but it's complex and interconnecting instead of overlapping would usually offer better transportation outcomes and there's a lot less gauge diversity so interconnection is more likely than overlap.

All that to say, you can't really get market forces on the rails. Rails compete with other modes of transit, but roads and oceans and rivers and air aren't driven by market forces either.

Transit by rail does compete in the market for transit across modes. You can have multiple transportation companies running on the same rails, and have some market forces, but capacity constraints make it difficult to have significant competition.


> capacity constraints make it difficult to have significant competition

Thirty years ago, you would be correct. In the modern day, you could tie switch signalling to real-time auctions and let private rail's command centers decide how much to bid and thus whether or not they win the slot for putting their cars onto the shared rails. The public rail owner likely needs to set rules allowing passenger rail to pay a premium to secure slots in advance (say, a week) so that a timetable can be guaranteed to passengers during peak rush hour, but off-peak slots can and should be auctioned to naturally handle the difference between off-peak passenger rail and not-time-sensitive, more-cost-averse freight rail.


You can’t. Every attempt at privatizing rail is a failure with worse performance, higher prices, and an inevitable level of special treatment by the state due to the monopolistic utility-like nature of rail infrastructure. Not everything needs to or should be privatized.


This 100%. It should be seen as critical infrastructure because of everything it can enable when run well.


> It was a privatization in name only.

Not, that "insight" again. Yes it was privatized and yes it is still completely owned by the state. "Privatization" is a term of art (in German) that refers to the corporate structure not the ownership. There are also public corporations in Germany, that are fully owned by random people: e.V. = registered association.


I believe modern economists are studying how ownership should be assigned. The thinking is that contracts and rules handle the majority of situations but emergencies and edge cases require an owner who has authority and whose interests align with the thing they control. And you want a mechanism to reassign ownership when the previous owner is incompetent.

In the case of a national train system, you may want to create a national entity to develop, coordinate, and make the physical trains and support technologies. You would create regional or metro entities to control the train network for their local area including the train stations. They coordinate with each other via negotiated contracts. Any edge cases or emergency falls under the purview of the owning entity. For example, the national entity controls the switch from diesel locomotives to the newest engine. The local authority is responsible for repairing the lines after a natural disaster.

If an entity is egregiously incompetent or failing, the national regulatory authority, with support of the majority of all the different train entities, takes control and reforms it.


keep the rails as a state-owned monopoly, let different train operators run on it. Basically we have that for airplanes, and it works well enough.


I'm wondering if this overlooks areas where we experience much higher levels of deviation today. Take music, for example. When I grew up, I was basically limited to whatever was playing on the radio or MTV—there was only so much airtime for a small set of popular songs. The mainstream was much more mainstream. Today, I can listen to obscure Swedish power metal bands with fewer than 5,000 monthly listeners on Spotify without any difficulty.

The same goes for fashion. I have a picture of my mom and her friends where everyone looks like a miniature version of Madonna. Today, fashion seems far more individualistic.

Streaming has given us a vast spectrum of media to consume, and we now form tiny niche communities rather than all watching Jurassic Park together. There are still exceptions like Game of Thrones, The Avengers, or Squid Game, but they are less common.

One of my friends is into obscure K-pop culture that has virtually zero representation in our domestic media. Another is deeply interested in the military history of ancient Greece—good luck finding material on that when there were only two TV channels.

Maybe deviance hasn't disappeared—maybe it's just shifted elsewhere…?


I'd also argue the culture of "digital degeneracy" has permeated the internet and is no longer locked away in, say, the bastion of mid/late 2000s 4chan. What used to be violent NSFL liveleaks content is now easily accesible by anyone with a phone. Softcore content is completely widespread on "clean" apps like IG and Tiktok.

If we measure deviance only by the metrics that existed before social media, we will of course find what is expected.


Consuming niche stuff isn't really deviance in any meaningful sense.

There's no risk-taking there, no producing something new for the world, and very little personal actualization beyond getting to consume a thing you like.


Maybe we're looking at this wrong. Maybe 'new' stuff just isn’t that interesting to people any more. I mean the amount of 'new' things out there are huge and we are constantly exposed to them lots of them. Then when you couple that with the massive amount of advertising that is everywhere on every surface and site, people start to brain adblock and focus on patterns they recognize.


This was beautifully written and illustrated.


I think Tiny Glade and games like it are the advanced iterations of minecraft.


Yep, pure joy to read.


Indeed. I really appreciate the simple and well done illustrations. I’m curious what op used to make them.


we're actually working on a practical implementation of aspects of what Fei-Fei describes - although with a more narrow focus on optimizing operations in the physical space (mining, energy, defense etc) https://hivekit.io/about/our-vision/


Looks amazing- and the point they're making in the article is correct. Switching back and forth from VS to PG Admin creates friction that this seems to solve in a much nicer way


Maybe we need to widen our search for life. Earth is a planet with about 15 degree average temperature and abundant water and oxygen. So that's what live here consumes and where it thrives. But life is all about adaptation. So, father than looking for planets with similar temperatures and resources, shouldn't we be looking for other possible foundations for life? Maybe there's a thriving civilization out there, living happily at 300 degrees, breathing neon and eating sulfur?


I don't think its about devaluing the currency to pay back debt at all. I believe it's about a fundamental vision of an autark USA, decoupled from any international obligations, whether its NATO, WHO or WTO and focused purely on producing and selling domestically whilst having a "beautiful ocean on each side".

I believe that's an unrealistic vision, not least since America's debt means it cannot afford significant shrinkage of its global market or a loss of its status as reserve currency, but I believe autarkie is the goal none the less.


I believe there are two kinds of skill: standalone and foundational.

Over the centuries we’ve lost and gained a lot of standalone skills. Most people throughout history would scoff at my poor horse-riding, sword fighting or my inability to navigate by the stars.

My logic, reasoning and oratory abilities on the other hand, as well as my understanding of fundamental mechanics and engineering principles would probably hold up quite well (language barrier notwithstanding) back in ancient Greece or in 18th century France.

I believe AI is fine to use for standalone skills in programming. Writing isolated bits of logic, e.g. a getRandomHexColor() function in JavaScript or a query in an SQL dialect you’re not deeply familiar with is a great help and timesaver.

On the other hand, handing over the fundamental architecture of your project to an AI will erode your foundational problem solving and software design abilities.

Fortunately, AI is quite good at the former, but still far from being able to do the latter. So, to me at least, AI based code editors are helpful without the risk of long term skill degradation.


This is a great comment and says what I've been thinking but hadn't put into words yet.

Too many people think what I do is "write code". That is incorrect. What I do is listen, read, watch and think. If code needs writing then it already basically writes itself because at that point I've already done the thinking. The typing part is an inconvenience that I'd happily give up if I could get my thoughts into the computer directly somehow.

AI tools make the easy stuff easier. They don't help much with hard stuff. The most useful thing I've found them for is getting an initial orientation in a completely unfamiliar area. But after that, when I need hard details, it's books, manuals, blogs etc just like before. I find juniors are already lacking in their ability to find and assimilate knowledge and I feel like having AI isn't going to help here.


Abstracting away the software paraphernalia makes this more clear in my view: our job is to understand and specify abstract symbolic systems. Making them work with the current computer architectures is incidental.

This is why I don't see LLM assisted coding as revolutionary. At best I think it's a marginal improvement on indexing, search and code completion as they have existed for at least a decade now.

NLP is a poor medium for specifying abstract symbolic systems. And LLMs work by finding patterns in latent space, I think. But the latent space doesn't represent reality, it represents language as recorded in the training data. It's easy to underestimate just how much training data were used for the current state-of-the-art foundational models. And it's easy to overestimate the ability these tools have to weave language and by induction attribute reasoning abilities to them.

The intuition I have about these LLM-driven tools is that we're adding degrees of freedom to the levers we use. When you're near an attractor congruent with your goals it feels like magic. But I think this is over fitting: the things we do now are closely mirrored by the data we used to train these models. But as we move forward in terms of tooling, domains, technology, culture etc, the data available will become increasingly obsolete, relevant data increasingly scarce.

Besides there's the problem of unknown unknowns: lots of people using these tools are assuming that the attractors they see pulling on their outcome is adequate because they can only see some arbitrary surface of it. And since they don't know what geometries lie beneath, they end up creating and exposing systems with several unknown issues that might have implications in security, legality, morality, etc. And since there's a time delay between their feeling of accomplishment and the surfacing of issues, and they will be likely to use the same approach, we might be heading for one hell of a bullwhip effect across dimension we can't anticipate at all.


>The typing part is an inconvenience that I'd happily give up if I could get my thoughts into the computer directly somehow

I understand what you mean, but for some reason I cannot imagine my younger self getting into his first programming practice, going "ugh, why do I have to type this? Why can't I just think and let the computer do it for me". I don't think I would've reached where I am if I saw the act of practice as a tedium that I wish to get it removed.

You probably see it like that because you're not that kid anymore, and for today's "you" code is just a means to provide and nothing more.


I'd classify this as theoretical skills vs tool skills.

Even your engineering principles are probably superior to ancient Greeks, since you can simulate bridges before laying the first stone. "It worked the last time" is still a viable strategy, but the models we have today means we can often say "it will work the first time we try."

My point being that theory (and thus what is considered foundational) has progressed as well.


> horse-riding, sword fighting or my inability to navigate by the stars.

Some better more suitable examples would be warranted here, none of these were as widespread or common as you'd assume. Little to no metaphorical scoffing would happen for those. Now, sewing and darning, and subsistence, while mundane, are uncommon for many of us.


For some strange reason, I’m better at sewing than both my wife and mother-in-law. I learned it in public school when both genders learned both woodworking and sewing, and maintained an interest so that I could wear “grunge” in the 1990s. The teachers I had remembered that those classes were gendered while they worked.


“still far from being able to do the latter” These models have been in wide use for under three years. AI IDEs barely a year. Gemini 2.5 Pro is shockingly good at architecture if you make it into a conversation rather than expecting a one-shot exercise. I share your native skepticism, but the pace of improvement has taken me aback and made me reluctant to stake much on what LLMs can’t do. Give it 6 months.


Taking your SQL example, if you don't properly understand the SQL dialect how can you know that what the AI gives you is correct?


I'd say because psychologically (and also based on CS Theory) creating something and verifying draw from similar but also unrelated skills.

It's like NP. Solving an NP problem is very hard. Verifying that the solution is correct is very easy.

You might not know the statements required, but once the AI reminds you of which statements are available, you can check the logic using these statements makes sense.

Yes, there is a pitfall of being lazy and forgetting to verify the output. That's where a lot of vibe coding problems come from in my opinion.


The biggest problem with LLMs is that they are very good at presenting something that looks like a correct solution without having the required knowledge to confirm if it is indeed correct.

So my concern is more "do you know how to verify" rather than "did you forget to verify".


The fact that I'm disproportionally excited about this probably dates me as an early 2000s web developer. But since selects can do things that you simply cannot recreate in HTML, e.g. have options drop downs that extend outside the viewport boundaries, makes this a really helpful feature.

Now, do autocompletes and tag selectors next...


I doubt it'll still be able to do those things. From the article:

>Using base-select loses a number of features and behaviors:

> The <select> doesn't render outside the browser pane.

> It doesn't trigger built-in mobile operating system components.

I have mixed feelings about it. Mobile users, get ready for poorly optimized select elements. On the other hand it reduces the need for javascript for styling forms, which is good


> The <select> doesn't render outside the browser pane. ... It doesn't trigger built-in mobile operating system components.

To me, this is intrinsically what makes a <select> a <select>. Styling is great, but without these features, this doesn't really bring anything new to the table


With these features scammers will create all sorts of "you have to log into your password manager" popups again.


Thanks to humanity, supporting this is a surefire ticket to someone figuring out how to phish credentials through a <select> element.


Certainly, there exists a middle ground between having no options for styling and some options where we don't compromise users


For the record, there's already a bunch of custom select-a-like replacement elements out there; I'm partial to select2. The main reason for this is that selects don't come with what we used to call "combobox" features; there's no type-ahead completion, and you can't lazy-load options from a larger data source because of that.

My main gripe is the loss of rendering outside the browser pane. To be clear, we already don't have that on mobile at all; if you've ever used an iPad with Stage Manager you'll note how popovers - all of them, including native apps - are neatly conformed to the bounds of the containing window. Pop-over menus are supposed to break the window pane, but they don't, for reasons I don't quite understand but can guess rhyme with the word "security".


"It doesn't trigger built-in mobile operating system components." Is that part of the spec? I can see Apple deviating from that implementation.


I'm not sure about this. It could break the positioning / sizing / box CSS properties.

That would require rendering arbitrary HTML in the native widget, outside the browser. And I think that would require putting WebKit in the native widget. Or, to maintain a "copy" of the widget that looks like the native one but uses WebKit to render things. Seems annoying to maintain.

(And there are the security concerns mentioned by the other comments)


Mobile users are the majority of users by far. Do web designers really make their sites hostile to most of their users? (I suspect the answer is yes)


I think this totally depends on the site in question. Seriously researching something is hell on mobile browsers. As is doing productive stuff. Who wants to work on a tiny screen and no keyboard? On the desktop you can open dozens or hundreds of tabs on a single topic. Therefore I'm not surprised to see that on my site (technical articles) I can see the number of requests from mobile devices is just 17%.

Windows is 52%, Linux (without Android) is 18%, Macintosh is 13%, Android 11%, iOS 6%, Chrome OS 0.5%, others <0.5%. (Android and iOS may include tablets, but the overall traffic from tablets is just a few percent.) (Note that I've excluded crawlers and unknown user agents (bots and crawlers) from these results.)

FWIW, some bots lie about what they are, which typically inflates the Windows results. I have another source of data, I can see what types of devices saw my site in Google results, and it's 69% desktops, 30% mobile, 1% tablets. (I can also see how many clicked, and it's similar numbers.)


That's fair, but I assume that is the initial implementation. Surely, over time, browser vendors will want to make the full spectrum of select functionality available consistently.


I don't think browsers will ever let web code affect things outside the viewport because scammers would cook up some truly zany things with that power.


Even rendering arbitrary pixels inside the viewport is bad enough. Something that went out of fashion but is apparently now back in fashion is detecting the user's operating system and browser, then displaying a pixel-perfect replica of a second browser window open to Paypal and asking you to log in... displayed within the bounds of the first browser window.


This is why the new login prompt of 1Password is worse than the old one, it appears at the center of the screen where the website could easily put a replica. The old one opened at the height of the extension icon, a bit above where the browser opens the alert dialog


Definitely not. Why would they let web devs render outside of the browser window? That's a recipe for disaster.


There needs to be some middle ground. I'd trade off just being able to set just the background color and font and keep these native-like features


The following works for me in Chrome, and doesn't prevent the menu from going outside of the viewport:

    select, option {
        background: red;
        font-family: 'comic sans ms';
    }


Yeah, it only works in Chrome


I think that you can compose arbitrary images that way using an image-like font (using various Unicode chars and assigning to each a small tile of the full image)

Actually I am now curious of how much detail/size/colours/animations you can fit in a single letter.


If that's all your changing, then why can't you make do with the system default?


It's actually crazy that we don't have a basic typeahead component or tag selector in this day and age with HTML. Every web page I've ever built has needed these components and while there are libraries out there, they all have an annoying bug here or there.

But considering we are just now getting Select tags with styling, signals how long it might take for a typeahead which is vastly more complex.


Why implement broadly useful HTML widgets when you can instead put those engineering resources to work on a new WebBeer API that fetches the number of beers in the user’s fridge or something else similarly niche?


> basic typeahead

It isn’t perfect, but have you tried <datalist>?

Totally agree about tag pickers, I was bummed to see that Bootstrap didn’t have a tag selector component either.



It may not be present in Apple’s official documentation but it has been supported since Safari 12.2.

See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/da... compatibility. The demo on that page works for me in current Safari on both iOS and Mac.


Some examples seem to work better than others though. I’m on latest iOS and sometimes it will invoke the native date picker like you’d expect to see, sometimes it won’t, and the type ahead doesn’t seem to work consistently


That demo shows the problems splendidly. It “only kinda” works on iOS.


Safari is the "new" IE. I put "new" in quotes because it's been this way for like a decade.


--- start quote ---

Back fifteen years ago IE held back the web because web developers had to cater to its outdated technology stack. “Best viewed with IE” and all that. But do you ever see a “Best viewed with Safari” notice? No, you don’t. Another browser takes that special place in web developers’ hearts and minds.

--- end quote ---

https://www.quirksmode.org/blog/archives/2021/08/breaking_th...


Yes, Safari is not exactly like IE because IE had a dominant user share once upon a time.

We don't see "best viewed in Safari", but we do see plenty of sites that can be viewed in Safari, despite the extra effort used to get them there. And I'm not even a regular chrome user.


The absolute vast majority of web sites require no effort to "get there".

The absolute vast majority of those which don't work in Safari use Chrome-only non-standards.

And there is a tiny minority of sites that run into some Safari-specific quirks


If anything chrome is the engine with odd quirks you are forced to work around.


I haven't found this to be the case in my experience.


Maybe it's just iframes that are the issue but they were a devil and a half to get working in chrome (or blink ig) without relying on third party cookies.


Interested in what you are doing with the iframes. Something with complex authentication? I've been forced to use iframes a few times for 3rd party resources that should have been first-party (mostly with banks and credit unions), and have only had some styling issues on mobile (which have been overcome by using JavaScript and window.matchMedia to check for media queries).


Chrome's quirks become the standard and other browsers have to implement them.


also drag and drop rearrange


> have options drop downs that extend outside the viewport boundaries

Unless this is about something different from what you mean, unfortunately, it's not the case, as stated in the article:

> Using base-select loses a number of features and behaviors:

> The <select> doesn't render outside the browser pane.


> Now, do autocompletes

This is kind of ready, see datalist element.

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/da...


I know about datalist, but it's the saddest autocomplete experience you can offer. If something is not fully styleable, it's automatically garbage. If it's styleable, it may be decent.

Now, I understand why datalist is not styleable the way it is implemented right now. On Android, the suggestions come on the top bar of the native keyboard, so it doesn't make sense to be able to put arbitrary divs there. But in that case, there should be an alternative styleable autocomplete element.

Another element that is unstyleable crap is <input type=file>, <audio> too.


<input type="datetime-local"> with automatic ISO8601 timezone offsets would be awesome too!


ISO-8601 is not the correct format for serializing local time unless it's in the past.

In my experience, a local datetime picker is going to be used almost exclusively for a future date and time. What you want instead of a timezone offset is a zone ID. That way date and tzdata can handle it properly on the backend.


For this case, I will often ask for the timezone, since that data is often updated on the operating system, but I don't believe it's often for someone to be in the same location and have their timezone change. The software that I've maintained the most over the years (since 2009 up to deploying an update today) requires a login, so I have a client account that includes choosing their timezone. I then use that to convert everything to UTC in the database, and when I retrieve the data, I use it to convert UTC back to their local date/time. I felt that it was the best option, since a user moving to a different timezone should still be able to get dates/times back relative to where they have their current timezone set.


This works for things in the past but not things in the future.

If I say I want something to happen at 8pm New York City time on January 7, 2028 and then the DST rules for NYC change, I likely still want it to happen at 8pm. Converting to UTC and back to local time loses that information and it will happen at the wrong time.


I 100% agree with you, and don't set cron jobs/scheduled tasks this way. I only use this for displaying date/time to users.

With that said, I do appreciate the comment, and would have to make sure that if I run scheduled tasks in the future, they are run when the user wishes them to be completed based on when that user sets it to be completed (so would most likely not convert to UTC, and save the timezone with the date/time).


I'd much rather have it just use the system time, which is already available over a javascript API. I wish it just were included in your html form datetime-local request.

https://caniuse.com/mdn-javascript_builtins_intl_datetimefor...

or appending the `Date().getTimezoneOffset();` to receive a ISO8601 timezone offset


Right. The offset is not enough without a reference recorded time. You need the time and the time zone in order know the true time. This is a big problem is systems that don't have an intrinsic time type that deploy and have a database full of ambiguous times. Once it happens, backfilling that is a real slog.


Ooh I can render arbitrary pixels outside the viewpoint. Like a system dialog asking for a password.


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

Search: