Hacker Newsnew | past | comments | ask | show | jobs | submit | ncommentslogin

I'm not a good programmer by any means, but here are some ideas that have helped me along my journey:

* pick a language. It doesn't matter which one. A popular one will have more tools already built for it and a bigger community;

* learn the basic grammar of the language - it's usually trivial, unless it's your first language;

* understand what kind of algorithms and data structures exits and what problems they solve. You don't need to implement them yet, just know they exist;

* find something interesting to work on, if you can. Are you interested in something specifically? Do you want to know how to make a game or how to automate some everyday tasks, for example?

* find something your friends are contributing to or working on, and ask them questions;

* search online whenever a though pops up in your head. Not only for references from a manual, but for best practices and even open-ended questions. If you're not sure if something is correct, search for articles or comments that say it's wrong or that it's dangerous or that it's the best. Don't rely on 1 source of information. If you're using AI, ask it to give you links so you can read what actual people wrote. Don't feel inferior for making 50 search queries in an hour and writing 10 lines of code;

* take time to set up your environment. Look for ways to make it better, to automate a lot of what you do. It may be boring, but it will save you a lot of time down the road;

* try different technologies, languages and tools. Some suck objectively, some will suck for you personally. Don't stick with the first thing;

* look for similar threads elsewhere so you get more suggestions;

* learn how to freely acquire books and papers that are behind a paywall;

* take your time and enjoy the process.


I'd be more (or at least as) worried about these sketchy 'debloat' scripts and the root kit's in your game's anti-cheat than Microsoft's AI.

About 10 years ago I was regularly withdrawing small sums of money every month, looking a bit poor, with old clothes, sometimes a bit torn or dirty. The bank teller just offered to give me a pair of winter shoes. I felt uncomfortable so I didn't take them, but thanked him anyway. I could've used them, but I think he probably offered them to someone else later on who needed them more than I did.

I didn't have any prior relationship with him, except going to him to give him my ID so I can get the money a few times.


If you’re integrating USDC into your app, small faucet amounts aren’t enough to properly test real-world flows like payouts, batching, or cross-chain transfers with CCTP and Gateway.

TESTMINT lets developers mint native testnet USDC across multiple chains so you can test at scale—without hacks or workarounds.

Mint up to 10,000 testnet USDC

Native USDC contracts (no mock tokens)

Available across multiple testnets

Designed for high-volume transaction testing

Build, simulate, and ship with confidence before you go to mainnet. https://testmint.myproceeds.xyz/


Makes sense.

Got it.

America First is not isolationist ("America Only" would be isolationist).

I think school ruined fiction books for me. I had to read long boring books about stories that didn't interest me, with useless sentences describing what the scene looked like or what someone had for dinner. Most of the stories and themes were outdated and didn't have enough context to make them understandable. Some books even used outdated words and phrases.

Maybe if I wasn't forced to read a book in an outdated language about some Christian farmer 300 years ago while I was not in school, and if I could access a succinct version 1/10th of the length of the book, I'd read it.

Maybe if I wasn't asked to describe minor details to prove I read the book, I'd actually focus on the story and not on every irrelevant detail.

Maybe if my teacher didn't force their religious holier-than-thou attitude and allowed us to form our own opinions, I'd be more engaged.

What school taught me was how to get away with not reading the books. I skimmed books by skipping tens of pages at a time or asked friends for the TL;DR or just got an F.

Now I have a feeling of uneasiness and dread when I try to read fiction for fun. So I don't.

Most 300 page fiction books I had to read could've easily been condensed to 30 pages without any loss of information.

Being forced to read and memorize poetry was the absolute shit. A lot of people won't care about poetry no matter how hard you try to force them to like it. And half of it was propaganda - how $nation survived $struggle, how $nation is so great or beautiful or how $hero did $ethical_thing.


1. Does any other operating system come with a complete implementation of win32 and directx and good hardware drivers?

Update: Just open sourced the code!

GitHub: https://github.com/wchu3798-cpu/xerasnetry

Full source code is now available. Runs 100% locally, no API keys or private keys needed.

Feedback welcome!


Thats a really nice idea, thanks for all the advice and help

Hey, Thanks for the response and all the resources, will definitely look into them.

This is a (very) rambling comment since I added things to it as I watched the video.

I think the state of the current Desktop UX is great. Maybe it's a local maximum we've reached, but I love it. I mostly use XFCE and there are just a few small things I'd like changed or fixed. Nothing that I even notice frequently.

I've used tiling window managers before and they were fine, but it was a bit of a hassle to get used to them. And I didn't feel they gave me something I couldn't do with a stacking window manager. I can arrange windows to the sides or corners of the monitor easily with the mouse or the keyboard. On XFCE holding down alt before moving a window lets me select any part of the window, not just the title bar, so it's just "hold down ALT, point somewhere inside the window and flick the window into a corner or a side with the mouse". If I really needed to view 10 windows at the same time, I'd consider a tiling window manager, but virtual desktops on XFCE are enough for me. I have a desktop for my mails, shopping, several for various browsers, several for work, for media, and so on. And I instantly go to the ones I want either with Meta+<number> (for example, Meta+3 for emails), or by scrolling with my middle mouse on the far right on my taskbar where I see a visual representation of my virtual desktops - just white outlines of the windows relative to the monitors.

Another thing I've noticed about desktop UX is that application UX seems follow the trends of website UX where the UX is so dumbed down, even a drunken caveman who's never seen a computer can use it. Tools and options are hidden behind menus. Even the menus are hidden behind a hamburger icon. There's a lot of unnecessary white space everywhere. Sometimes there's even a linear progression through a set of steps, one step at a time, instead of having everything in view all the time - similar to how some registration forms work where you first enter your e-mail, then you click next to enter a password, then click next again, and so on. I always use "compact view" or "details view" where it's possible and hide thumbnails unless I need them. I wish more sites and apps were more like HN in design. If you're looking to convert (into money or into long-term users) as many people as possible, then it might make sense to target the technological toddlers, but then you might lose, or at least annoy, your power users.

At the beginning of the video I thought we'll likely only see foundational changes when we stop interacting with the computer mainly via monitors, keyboards and mice. Maybe when we start plugging USB ports into our heads directly, or something like that. Just like I don't expect any foundational changes or improvements on static books like paper or PDF. Sure, interactive tutorials are fundamentally different in UX, but they're also a fundamentally different medium. But at 28:00, his example of a combination of window manager + file manager + clipboard made me rethink my position. I have used clipboard visualizers long ago, but the integration between apps and being able to drag and otherwise interact with it would be really interesting.

Some more thoughts I jotted down while watching the video:

~~~~ 01:33 This UX of dragging files between windows is new to me. I just grab a file and ALT+TAB to wherever I want to drop it if I can't see it. I think this behavior, to raise windows only on mouse up, will annoy me. What if I have a split view of my file manager in one window, and other window above it? I want to drag a file from the left side of the split-view window to the right one, but the mouse-down wont be enough to show me the right side if the window that was above it covers it. Or if, in the lower window, I want to drag the file into a folder that's also in the lower window, but obscured by the upper window? It may be a specific scenario, but

~~~~ 05:15 I'd forgotten the "What's a computer?" ad. It really grinds my gears when people don't understand that mobile "devices" are computers. I've had non-techies look surprised when I mention it, usually in a sentence like "Well, smartphones are really just computers, so, of course, it should be possible to do X with them.". It's such a basic category.

Similarly, I remember Apple not using the word "tablet" to describe their iPad years ago. Not sure if that has changed. Even many third-party online stores had a separate section for the iPad.

I guess it's good marketing to make people think your product is so unique and different than others. That's why many people reference their iPhone as "my iPhone" instead of "my phone" or "my smartphone". People usually don't say "my Samsung" or "my $brand" for other brands, unless they want to specify it for clarity. Great marketing to make people do this.

~~~~ 24:50 I'm a bit surprised that someone acknowledges that the UX for typing and editing on mobile is awful. But I think that no matter how many improvements happen, using a keyboard will always be much, much faster and pleasant. It's interesting to me that even programmers or other people who've used desktop professionally for years don't know basic things like SHIFT+left_arrow or SHIFT+right_arrow to select, or CTRL+left_arrow or CTRL+right_arrow to move between words, or combining them to select words - CTRL+SHIFT+left_arrow or CTRL+SHIFT+right_arrow. Or that they can hold their mouse button after double clicking on a word and move it around to select several words. Watching them try to select some text in a normal app (such as HN's comment field or a standard notepad app) using only arrow keys without modifiers or tapping the backspace 30 times (not even holding it down) or trying to precisely select the word boundary with a mouse... it's like watching someone right-click and then select "Paste" instead of CTRL+V. I guess some users just don't learn. Maybe they don't care or are preoccupied with more important things, but it's weird to me. But, on the other hand, I never learned vi/vim or Emacs to the point where it would make me X times more productive. So maybe what those users above look to me is what I look to someone well-versed in either of those tools.

~~~~ Forgot the timestamp, it was near the end, but the projects Ink & Switch make seem interesting. Looking at their site now.


Hey, thanks for your response, I would say programming, right now I am trying to get better at network programming and learning more about the bit torrent protocol and trying to build it.

100 days with state of the art LLMs (I have to learns the math) and I'll get them beyond ALL of your dreams

and yes, dear twitterer with a lot of respectable practice ... I know it's ridiculous and that it hurts ... but ofc it wouldn't be possible without those giants whose shoulder you are wanking on


MicroVMs seem to be getting more popular.

I wonder how they fit into the picture.


there was a talk about this at defcon maybe 7 years ago how even going to a tor entry node could get you disappeared in türkiye. same in china (it was something about ethically exploring networks in authoritarian regimes where even pinging a chinese address from the united states could get someone arrested... methinks harvard student was presenting it?)

i can live without reddit and hackernews. i can't live without online banking, bill paying, insurance, healtchare portals, etc.

it is funny i have been probing HN for years, and i've found a number of cases when everything is normal, but i check the account from another device and it isn't there, or is free of posts despite having made many. yet i would do the same if i was an admin trying to keep a walled-garden free of trolls.


thank you. that is a really good point. the economic incentive! i will keep using mine!

I wonder if you can hack a LocalStorage sync feature via ATProto PDS, since you can put arbitrary JSON records via /xrpc/com.atproto.repo.putRecord and not just Bluesky posts.

The only drawback I can think of is that all of your commits are broadcast on a megaphone to the network firehose, but encryption can alleviate that somewhat.


They primarily serve different purposes, but they could complement each other.

Durable Streams are a lightweight network protocol on top of standard HTTP. When you are building a synchronisation layer for let's say a local-first app, you need to not only exchange data over some lower-level protocol (i.e. HTTP / SSE / WS), but you also have to define a higher-level protocol on how the client & server are going to communicate - i.e. how to resume data fetching once the client reconnects, based on the last data that the client received (~offset). Since the reconnect & offset should be automatically handled by the Durable Stream, you could just build your domain logic on top of it.

CRDTs are primarily meant to resolve data conflicts, usually client-side, based on a defined conflict resolution strategy (i.e. last-writer-wins). Some of the CRDT libraries, like automerge, loro or yjs, also implement a networking layer to exchange the data between nodes (could be even P2P), meaning they already have a built-in mechanism for reconnection and offset (~send me data since X). However, nobody forces you to use their networking layer, meaning that with Durable Streams, you would have a good starting point to build your own.


I built Onefile because I wanted the simplest possible way to publish a single HTML page.

Features: - Instant subdomain (yourname.onefile.site) - 10KB max per page – encourages minimal, fast sites - No JavaScript required - Built-in editor with syntax highlighting - "Surf" feature to discover random pages - Completely free

Inspired by the minimalist web movement, I wanted something even simpler than Neocities. The 10KB limit forces creativity and encourages lean, fast-loading pages.

Would love feedback from the HN community—especially on UX, feature ideas, or anything that could make it even more hacker-friendly!

PS: Obviously inspired by Bear Blog and the idea of simple, fast, content-first publishing.


If you work with event sequences (clickstreams, shopping baskets, logs, user journeys), you’ve probably noticed that most embeddings capture co-occurrence, but not how sequences evolve.

I built Event2Vec, a small Python library that learns additive, interpretable embeddings for discrete event sequences.

Core idea: - Each event has a vector - A sequence is the sum of its events - This makes transitions explicit and composable

So you can do vector arithmetic on sequences, not just similarity.

Example (shopping data):

Δ = E(water_seltzer_sparkling) − E(soft_drinks) E(?) ≈ Δ + E(chips_pretzels) → fresh_dips_tapenades, bread, packaged_cheese

Another:

Δ = E(coffee) − E(instant_foods) E(?) ≈ Δ + E(cereal) → water_seltzer_sparkling, juice_nectars

The model learns behavioral shifts (e.g. lighter choices, habitual consumption) and applies them across categories.

API is intentionally simple and scikit-style:

from event2vector import Event2Vec model = Event2Vec( num_event_types=len(vocab), embedding_dim=128, geometry="euclidean", # or "hyperbolic" pad_sequences=True ) model.fit(train_sequences) embeddings = model.transform(train_sequences)

Use cases: - Clickstream / funnel analysis - Basket & customer modeling - User lifecycle modeling - Log / trace sequences - Any ordered categorical data

It’s not meant to replace transformers or RNNs — it’s for cases where: - You want interpretability - You care about sequence geometry - You want something simple and debuggable

Code (MIT):

https://github.com/sulcantonin/event2vec_public

or

pip install event2vector

Example notebooks: - Shopping baskets: https://colab.research.google.com/drive/118CVDADXs0XWRbai4rs... - Movies: https://colab.research.google.com/drive/1BL5KFAnAJom9gIzwRiS...

Very interested in feedback, real-world use cases, and where this breaks down.


Hey ben, thanks for the response and advice, I've built chess in the terminal with Go, the trouble for me is I cant seem to find something I can work on a long time and have fun. I'll try working on more projects and see if I can find something. :)

Pretty much for everything, except for things that are already tied to my real world identity like email and a few sites that know who I am.

It accomplishes 2 things:

* I'm not tracked as much. Less data points for the companies to gobble up.

* More Tor users lead to better anonymity for everyone as it's easier to blend in - you won't be the only one wearing a mask at the club every weekend.

I got used to the latency. It's not that bad. Some sites load instantly, others take 1-2 seconds. A few take a while.

Sites from one regional hosting provider in my country just don't load at all. I get "Server not found". I'm not sure how that works - are they blackholing an ASN or using something else with BGP?

The main issue for me is not the latency, though, but the CAPTCHAs and 403's (HTTP Forbidden). If I were to search for a recipe, for example, I'd open 5-10 of the results in new tabs (with the middle mouse button; idk why people use CTRL+click), then close the ones with "Attention Required" or "Forbidden" so I'm left with 3-5 usable sites. That way I always have something to read. When I open a few sites one after the other, at least one will usually load instantly.

I haven't used Tor without Whonix on Qubes OS for a while, so I'm not sure if the latency is different on a standard OS with just Tor Browser installed. My workflow is that I use disposable VMs for different things I do. Right now I have a VM with HN and a few links I've opened from it and another VM with other research I started earlier today that I plan on finishing a bit later. When I'm done with my HN session, I'll close this VM, which will destroy it. For me this compartmentalization is good not only for security and privacy, but for productivity, as well.


Author here.

These benchmarks were run locally and published with full raw JSON so others can reproduce or challenge the results under identical conditions. The engine is focused on deterministic incremental computation rather than throughput-at-all-costs.

Happy to answer concrete technical questions about the test setup or metrics.


Really fair critique regarding the snapshot approach. You're right optimizing limits based on a single point in time is dangerous for bursty workloads the need 8GB for 10 seconds scenario.

The intent of this script isn't to replace long-term metric analysis like Prometheus/Datadog trends, but to act as a smoke test for gross over-provisioning, the dev who requested 16GB for a sidecar that has flatlined at 100MB for weeks.

You make a great point about the hostile framing of the word waste. I definitely don't want to encourage OOM risks. I'll update the readme to clarify that this delta represents potential capacity to investigate rather than guaranteed waste.

Appreciate the detailed breakdown on the safety buffer nuances.


100% is a human response. My apology's would you rather me articulate in Gen Z?

But not in Firefox Android, without a third party add-on

DDG bangs is a nice feature. But feels neglected. No way to see a changelog and lots of old broken bangs. There is a form to submit new bangs suggestions but unclear if anyone reads the submissions or how the acceptance process works. No forum or other channel where users can discuss or upvote suggestions for new or changed bangs.

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

Search: