US has investigated claims WhatsApp chats aren't private
7 by 1vuio0pswjnm7 | 183 comments on Hacker News.
https://ift.tt/FDRPsbU https://ift.tt/nNRLhtu...
Saturday, January 31, 2026
Friday, January 30, 2026
Thursday, January 29, 2026
Wednesday, January 28, 2026
New top story on Hacker News: Show HN: SHDL – A minimal hardware description language built from logic gates
Show HN: SHDL – A minimal hardware description language built from logic gates
3 by rafa_rrayes | 0 comments on Hacker News.
Hi, everyone! I built SHDL (Simple Hardware Description Language) as an experiment in stripping hardware description down to its absolute fundamentals. In SHDL, there are no arithmetic operators, no implicit bit widths, and no high-level constructs. You build everything explicitly from logic gates and wires, and then compose larger components hierarchically. The goal is not synthesis or performance, but understanding: what digital systems actually look like when abstractions are removed. SHDL is accompanied by PySHDL, a Python interface that lets you load circuits, poke inputs, step the simulation, and observe outputs. Under the hood, SHDL compiles circuits to C for fast execution, but the language itself remains intentionally small and transparent. This is not meant to replace Verilog or VHDL. It’s aimed at: - learning digital logic from first principles - experimenting with HDL and language design - teaching or visualizing how complex hardware emerges from simple gates. I would especially appreciate feedback on: - the language design choices - what feels unnecessarily restrictive vs. educationally valuable - whether this kind of “anti-abstraction” HDL is useful to you. Repo: https://ift.tt/Z5HIuef Python package: PySHDL on PyPI To make this concrete, here are a few small working examples written in SHDL: 1. Full Adder component FullAdder(A, B, Cin) -> (Sum, Cout) { x1: XOR; a1: AND; x2: XOR; a2: AND; o1: OR; connect { A -> x1.A; B -> x1.B; A -> a1.A; B -> a1.B; x1.O -> x2.A; Cin -> x2.B; x1.O -> a2.A; Cin -> a2.B; a1.O -> o1.A; a2.O -> o1.B; x2.O -> Sum; o1.O -> Cout; } } 2. 16 bit register # clk must be high for two cycles to store a value component Register16(In[16], clk) -> (Out[16]) { >i[16]{ a1{i}: AND; a2{i}: AND; not1{i}: NOT; nor1{i}: NOR; nor2{i}: NOR; } connect { >i[16]{ # Capture on clk In[{i}] -> a1{i}.A; In[{i}] -> not1{i}.A; not1{i}.O -> a2{i}.A; clk -> a1{i}.B; clk -> a2{i}.B; a1{i}.O -> nor1{i}.A; a2{i}.O -> nor2{i}.A; nor1{i}.O -> nor2{i}.B; nor2{i}.O -> nor1{i}.B; nor2{i}.O -> Out[{i}]; } } } 3. 16-bit Ripple-Carry Adder use fullAdder::{FullAdder}; component Adder16(A[16], B[16], Cin) -> (Sum[16], Cout) { >i[16]{ fa{i}: FullAdder; } connect { A[1] -> fa1.A; B[1] -> fa1.B; Cin -> fa1.Cin; fa1.Sum -> Sum[1]; >i[2,16]{ A[{i}] -> fa{i}.A; B[{i}] -> fa{i}.B; fa{i-1}.Cout -> fa{i}.Cin; fa{i}.Sum -> Sum[{i}]; } fa16.Cout -> Cout; } }
3 by rafa_rrayes | 0 comments on Hacker News.
Hi, everyone! I built SHDL (Simple Hardware Description Language) as an experiment in stripping hardware description down to its absolute fundamentals. In SHDL, there are no arithmetic operators, no implicit bit widths, and no high-level constructs. You build everything explicitly from logic gates and wires, and then compose larger components hierarchically. The goal is not synthesis or performance, but understanding: what digital systems actually look like when abstractions are removed. SHDL is accompanied by PySHDL, a Python interface that lets you load circuits, poke inputs, step the simulation, and observe outputs. Under the hood, SHDL compiles circuits to C for fast execution, but the language itself remains intentionally small and transparent. This is not meant to replace Verilog or VHDL. It’s aimed at: - learning digital logic from first principles - experimenting with HDL and language design - teaching or visualizing how complex hardware emerges from simple gates. I would especially appreciate feedback on: - the language design choices - what feels unnecessarily restrictive vs. educationally valuable - whether this kind of “anti-abstraction” HDL is useful to you. Repo: https://ift.tt/Z5HIuef Python package: PySHDL on PyPI To make this concrete, here are a few small working examples written in SHDL: 1. Full Adder component FullAdder(A, B, Cin) -> (Sum, Cout) { x1: XOR; a1: AND; x2: XOR; a2: AND; o1: OR; connect { A -> x1.A; B -> x1.B; A -> a1.A; B -> a1.B; x1.O -> x2.A; Cin -> x2.B; x1.O -> a2.A; Cin -> a2.B; a1.O -> o1.A; a2.O -> o1.B; x2.O -> Sum; o1.O -> Cout; } } 2. 16 bit register # clk must be high for two cycles to store a value component Register16(In[16], clk) -> (Out[16]) { >i[16]{ a1{i}: AND; a2{i}: AND; not1{i}: NOT; nor1{i}: NOR; nor2{i}: NOR; } connect { >i[16]{ # Capture on clk In[{i}] -> a1{i}.A; In[{i}] -> not1{i}.A; not1{i}.O -> a2{i}.A; clk -> a1{i}.B; clk -> a2{i}.B; a1{i}.O -> nor1{i}.A; a2{i}.O -> nor2{i}.A; nor1{i}.O -> nor2{i}.B; nor2{i}.O -> nor1{i}.B; nor2{i}.O -> Out[{i}]; } } } 3. 16-bit Ripple-Carry Adder use fullAdder::{FullAdder}; component Adder16(A[16], B[16], Cin) -> (Sum[16], Cout) { >i[16]{ fa{i}: FullAdder; } connect { A[1] -> fa1.A; B[1] -> fa1.B; Cin -> fa1.Cin; fa1.Sum -> Sum[1]; >i[2,16]{ A[{i}] -> fa{i}.A; B[{i}] -> fa{i}.B; fa{i-1}.Cout -> fa{i}.Cin; fa{i}.Sum -> Sum[{i}]; } fa16.Cout -> Cout; } }
Tuesday, January 27, 2026
Monday, January 26, 2026
Sunday, January 25, 2026
Saturday, January 24, 2026
New top story on Hacker News: Ask HN: Gmail spam filtering suddenly marking everything as spam?
Ask HN: Gmail spam filtering suddenly marking everything as spam?
32 by goopthink | 46 comments on Hacker News.
Almost all transactional emails are being marked as suspicious even when their SPF/DKIM records are fine and they’ve been whitelisted before. Did Google break something in gmail/spam filtering?
32 by goopthink | 46 comments on Hacker News.
Almost all transactional emails are being marked as suspicious even when their SPF/DKIM records are fine and they’ve been whitelisted before. Did Google break something in gmail/spam filtering?
Friday, January 23, 2026
Thursday, January 22, 2026
New top story on Hacker News: Show HN: Synesthesia, make noise music with a colorpicker
Show HN: Synesthesia, make noise music with a colorpicker
3 by tevans3 | 0 comments on Hacker News.
This is a (silly, little) app which lets you make noise music using a color picker as an instrument. When you click on a specific point in the color picker, a bit of JavaScript maps the binary representation of the clicked-on color's hex-code to a "chord" in the 24 tone-equal-temperament scale. That chord is then played back using a throttled audio generation method which was implemented via Tone.js. NOTE! Turn the volume way down before using the site. It is noise music. :)
3 by tevans3 | 0 comments on Hacker News.
This is a (silly, little) app which lets you make noise music using a color picker as an instrument. When you click on a specific point in the color picker, a bit of JavaScript maps the binary representation of the clicked-on color's hex-code to a "chord" in the 24 tone-equal-temperament scale. That chord is then played back using a throttled audio generation method which was implemented via Tone.js. NOTE! Turn the volume way down before using the site. It is noise music. :)
Wednesday, January 21, 2026
Tuesday, January 20, 2026
Monday, January 19, 2026
Sunday, January 18, 2026
Saturday, January 17, 2026
Friday, January 16, 2026
New top story on Hacker News: The Alignment Game
The Alignment Game
8 by dmvaldman | 0 comments on Hacker News.
https://docs.google.com/spreadsheets/d/1BYh9ZtEv4k7xoSXmtf1q...
8 by dmvaldman | 0 comments on Hacker News.
https://docs.google.com/spreadsheets/d/1BYh9ZtEv4k7xoSXmtf1q...
Thursday, January 15, 2026
Wednesday, January 14, 2026
New top story on Hacker News: Unemployed almost a year after graduating MIT – a rant
Unemployed almost a year after graduating MIT – a rant
29 by TimGubth | 19 comments on Hacker News.
(This is not a problem-solving rant this is a I need to release my thoughts cuz no one in my life understands rant) Not sure where else to turn to but I'm extremely embarrassed to say we're nearing the 1 year anniversary of my Feb graduation (*course 6*) and I'm still unemployed, to the dismay of me and my family. I've applied to hundreds of jobs, tailored my resume with tech folks who regularly hire, tailored cover letters, gotten referrals, spoken to relevant connections in my network, done really well in interviews, all to no avail. The feedback I've received from asking employers who rejected me is never something wrong about me, just that they found someone else with pre-existing experience in that particular industry or tech stack. How am I supposed to compete with that at an entry level? And the longer I go without work, the worse it gets in the eyes of employers. I have two internships from back in undergrad as my "work experience" but that's it, one at a known company and one at a startup. My personal projects were not super intensive unfortunately, but I'm not sure how much that's affecting me at this point. Given the way things are going in the world, I remove certain tech sectors from consideration, but I really don't think that should be a handicap. I knew the job market was bad going into it, but recently, I've genuinely fallen into depression. It feels like I was sold this lie that the MIT name would open doors previously inaccessible to me, but nothing seems to be helping me land a job. Sucks more when I run into old friends who can't even hide their shock that I'm still unemployed. So I have to pretend this is just a gap year and all part of the plan. I'm starting to come to terms with the fact that I might never work in industry as a *software engineer or in tech*, and that sucks! Maybe it's already time for a career change, I don't know to what. I never felt too good about myself at MIT compared to others and so this all feels like proof that I'm not skilled enough to work in my chosen field. I can't even do my hobbies with all this free time because I spend a lot of it applying to jobs, doomscrolling, and sulking. I am really grateful that I was able to move back home with my parents. I think they were happy to have me back for a bit. But now I'm starting to feel like a drag and burden, especially as the *middle child sister* who’s just… there. I feel like a firework that exploded in bursts of color (everyone ooed and ah-ed), and then... nothing. I'm considering starting some volunteer/side projects, but persistently, in the back of my mind, is this voice telling me I'm worthless because I can't make any money. I am a failure.
29 by TimGubth | 19 comments on Hacker News.
(This is not a problem-solving rant this is a I need to release my thoughts cuz no one in my life understands rant) Not sure where else to turn to but I'm extremely embarrassed to say we're nearing the 1 year anniversary of my Feb graduation (*course 6*) and I'm still unemployed, to the dismay of me and my family. I've applied to hundreds of jobs, tailored my resume with tech folks who regularly hire, tailored cover letters, gotten referrals, spoken to relevant connections in my network, done really well in interviews, all to no avail. The feedback I've received from asking employers who rejected me is never something wrong about me, just that they found someone else with pre-existing experience in that particular industry or tech stack. How am I supposed to compete with that at an entry level? And the longer I go without work, the worse it gets in the eyes of employers. I have two internships from back in undergrad as my "work experience" but that's it, one at a known company and one at a startup. My personal projects were not super intensive unfortunately, but I'm not sure how much that's affecting me at this point. Given the way things are going in the world, I remove certain tech sectors from consideration, but I really don't think that should be a handicap. I knew the job market was bad going into it, but recently, I've genuinely fallen into depression. It feels like I was sold this lie that the MIT name would open doors previously inaccessible to me, but nothing seems to be helping me land a job. Sucks more when I run into old friends who can't even hide their shock that I'm still unemployed. So I have to pretend this is just a gap year and all part of the plan. I'm starting to come to terms with the fact that I might never work in industry as a *software engineer or in tech*, and that sucks! Maybe it's already time for a career change, I don't know to what. I never felt too good about myself at MIT compared to others and so this all feels like proof that I'm not skilled enough to work in my chosen field. I can't even do my hobbies with all this free time because I spend a lot of it applying to jobs, doomscrolling, and sulking. I am really grateful that I was able to move back home with my parents. I think they were happy to have me back for a bit. But now I'm starting to feel like a drag and burden, especially as the *middle child sister* who’s just… there. I feel like a firework that exploded in bursts of color (everyone ooed and ah-ed), and then... nothing. I'm considering starting some volunteer/side projects, but persistently, in the back of my mind, is this voice telling me I'm worthless because I can't make any money. I am a failure.
Tuesday, January 13, 2026
Monday, January 12, 2026
New top story on Hacker News: Unauthenticated remote code execution in OpenCode
Unauthenticated remote code execution in OpenCode
37 by CyberShadow | 1 comments on Hacker News.
Previous versions of OpenCode started a server which allowed any website visited in a web browser to execute arbitrary commands on the local machine. Make sure you are using v1.1.10 or newer; see link for more details.
37 by CyberShadow | 1 comments on Hacker News.
Previous versions of OpenCode started a server which allowed any website visited in a web browser to execute arbitrary commands on the local machine. Make sure you are using v1.1.10 or newer; see link for more details.
Sunday, January 11, 2026
Saturday, January 10, 2026
Friday, January 9, 2026
New top story on Hacker News: Scientists discover oldest poison, on 60k-year-old arrows
Scientists discover oldest poison, on 60k-year-old arrows
11 by noleary | 1 comments on Hacker News.
https://ift.tt/60Av2np
11 by noleary | 1 comments on Hacker News.
https://ift.tt/60Av2np
Thursday, January 8, 2026
Wednesday, January 7, 2026
New top story on Hacker News: Polymarket refuses to pay bets that US would 'invade' Venezuela
Polymarket refuses to pay bets that US would 'invade' Venezuela
71 by petethomas | 36 comments on Hacker News.
https://ift.tt/ul4Bbvt
71 by petethomas | 36 comments on Hacker News.
https://ift.tt/ul4Bbvt
Tuesday, January 6, 2026
Monday, January 5, 2026
Sunday, January 4, 2026
New top story on Hacker News: Show HN: Hover – IDE style hover documentation on any webpage
Show HN: Hover – IDE style hover documentation on any webpage
8 by sampsonj | 0 comments on Hacker News.
I thought it would be interesting to have ID style hover docs outside the IDE. Hover is a Chrome extension that gives you IDE style hover tooltips on any webpage: documentation sites, ChatGPT, Claude, etc. How it works: - When a code block comes into view, the extension detects tokens and sends the code to an LLM (via OpenRouter or custom endpoint) - The LLM generates documentation for tokens worth documenting, which gets cached - On hover, the cached documentation is displayed instantly A few things I wanted to get right: - Website permissions are granular and use Chrome's permission system, so the extension only runs where you allow it - Custom endpoints let you skip OpenRouter entirely – if you're at a company with its own infra, you can point it at AWS Bedrock, Google AI Studio, or whatever you have Built with TypeScript, Vite, and the Chrome extension APIs. Coming to the Chrome Web Store soon. Would love feedback on the onboarding experience and general UX – there were a lot of design decisions I wasn't sure about. Happy to answer questions about the implementation.
8 by sampsonj | 0 comments on Hacker News.
I thought it would be interesting to have ID style hover docs outside the IDE. Hover is a Chrome extension that gives you IDE style hover tooltips on any webpage: documentation sites, ChatGPT, Claude, etc. How it works: - When a code block comes into view, the extension detects tokens and sends the code to an LLM (via OpenRouter or custom endpoint) - The LLM generates documentation for tokens worth documenting, which gets cached - On hover, the cached documentation is displayed instantly A few things I wanted to get right: - Website permissions are granular and use Chrome's permission system, so the extension only runs where you allow it - Custom endpoints let you skip OpenRouter entirely – if you're at a company with its own infra, you can point it at AWS Bedrock, Google AI Studio, or whatever you have Built with TypeScript, Vite, and the Chrome extension APIs. Coming to the Chrome Web Store soon. Would love feedback on the onboarding experience and general UX – there were a lot of design decisions I wasn't sure about. Happy to answer questions about the implementation.
Saturday, January 3, 2026
Friday, January 2, 2026
Thursday, January 1, 2026
New top story on Hacker News: Show HN: Feature detection exploration in Lidar DEMs via differential decomp
Show HN: Feature detection exploration in Lidar DEMs via differential decomp
3 by DarkForestery | 0 comments on Hacker News.
I'm not a geospatial expert — I work in AI/ML. This started when I was exploring LiDAR data with agentic assitince and noticed that different signal decomposition methods revealed different terrain features. The core idea: if you systematically combine decomposition methods (Gaussian, bilateral, wavelet, morphological, etc.) with different upsampling techniques, each combination has characteristic "failure modes" that selectively preserve or eliminate certain features. The differences between outputs become feature-specific filters. The framework tests 25 decomposition × 19 upsampling methods across parameter ranges — about 40,000 combinations total. The visualization grid makes it easy to compare which methods work for what. Built in Cursor with Opus 4.5, NumPy, SciPy, scikit-image, PyWavelets, and OpenCV. Apache 2.0 licensed. I'd appreciate feedback from anyone who actually works with elevation data. What am I missing? What's obvious to practitioners that I wouldn't know?
3 by DarkForestery | 0 comments on Hacker News.
I'm not a geospatial expert — I work in AI/ML. This started when I was exploring LiDAR data with agentic assitince and noticed that different signal decomposition methods revealed different terrain features. The core idea: if you systematically combine decomposition methods (Gaussian, bilateral, wavelet, morphological, etc.) with different upsampling techniques, each combination has characteristic "failure modes" that selectively preserve or eliminate certain features. The differences between outputs become feature-specific filters. The framework tests 25 decomposition × 19 upsampling methods across parameter ranges — about 40,000 combinations total. The visualization grid makes it easy to compare which methods work for what. Built in Cursor with Opus 4.5, NumPy, SciPy, scikit-image, PyWavelets, and OpenCV. Apache 2.0 licensed. I'd appreciate feedback from anyone who actually works with elevation data. What am I missing? What's obvious to practitioners that I wouldn't know?
Subscribe to:
Comments (Atom)