HNHacker News
TopNewBestAskShowJobs

tekstar

1,969 karma · joined May 18, 2017

email: tom@sequencer.party
submissionscomments
tekstar··on Smashing the Stack for Fun and Profit (1996)
This article, and then working through the book "Hacking and the Art of Exploitation" taught me the true fundamentals of the C programming language, and Linux. The other key ingredient was working through the classic "digital evolution" wargames where you'd SSH into a box as level1 and work your way up from there.
tekstar··on VSCode, Dev Containers and Docker
In big orgs it's a way to manage environment changes for big teams
tekstar··on REST Servers in Go: Part 1 – standard library
I guess I have a deeper point to make, which is.. if you're going to compare golang web libraries it's the details that are going to end up making your decision. Superficial comparisons will be misleading. Implement auth, CSRF, a "real ip" Middleware, request logging, graceful restarts, yes CORS, and then do a few REST endpoints with it to see how much boilerplate VS useful code you have to write.

Maybe this is just my opinion as I started a significant golang app with just vanilla stdlib and then added each of these complexities in turn, before switching to libraries to solve most of the boilerplate better than my hand-crafted patterns

tekstar··on REST Servers in Go: Part 1 – standard library
Nice demo. A few things you could add to make this more realistic to something that gets shipped:

-CORS support. Deploy this to a non-local domain and try to reach it from a web browser and it will fail. I like https://github.com/rs/cors. I had rolled my own but then moved to that library.

- input validation. I like go-playground/validator.

The other big issue is the locking by hand around the task store. In reality usually there would be a database to handle concurrent read/writes. I use SQLite in production. I know this is just a demo and you want to use just stdlib, but serializing all data access is sort of unacceptable as a solution in a concurrent language like Go. When I'm not handling concurrency with SQLite I like to implement The actor pattern, having a persistent goroutine listen and respond to "taskstore" requests via channels.

tekstar··on Encoding Data in Dubstep Drops
This gets me every. Time. Lol
tekstar··on Encoding Data in Dubstep Drops
Stenography is common, but usually it's just modifying the last bits of an image or hiding the extra payload after the image data. This is "drawing" within the audio spectrum, making the image out of audio that will be audible.
tekstar··on Encoding Data in Dubstep Drops
Reminds me of Aphex Twin (and some other artists) embedding images in the spectrograph render of their songs:

https://www.magneticmag.com/2012/08/the-aphex-face-visualizi...

tekstar··on Encoding Data in Dubstep Drops
If it's audio rate how is it different than a squarewave?

Edit: looked closer at the post, the DC offset lasts for over 100ms per cycle.. yeah that's a problem

tekstar··on Show HN: A cool Drag-and-Drop implementation for Svelte
This is all I want, too. But if you go the DIY route, don't you end up chasing the long tail of browser and device compatibility issues and bugs? I typically solve my own issues but this one just seems like a huge and uneven surface area.

I would love to see your 100-200 lines if you are willing to share. Not asking you to ship it and support it and end up the N+1'th unsupported DND library though ;)

tekstar··on Show HN: A cool Drag-and-Drop implementation for Svelte
I was researching drag and drop in JS recently, and what I found seemed pretty disappointing. Wondering if anyone can reinforce my opinion or counter it.

Drag and drop still seems like a mess. Browser support and touch support varies so you can't just use native APIs. Every popular library sits with tons of open issues and open PRs. Corporate solutions that have been open sourced appear abandoned. All the libraries I saw clocked in over 100kb.

Am I wrong? I want the "preact" or "day.js" drag and drop library. 10kb or less poly fill that gives me the basics. Does that exist?

tekstar··on 70TB of Parler users’ messages, videos, and posts leaked by security researchers
I never said there had to be swaths of illegal content.

In other words you are asserting there was absolutely no illegal content on parler that would require them to moderate their content when asked. If that's the stand you want to take, cool, have a great day, I am not responding to you further. Corporate legal risk assessment is what killed Parler.

tekstar··on 70TB of Parler users’ messages, videos, and posts leaked by security researchers
Illegal. Some of the content on Parler was illegal. Not extralegal. Illegal. And they refused to moderate it when asked.

Some if it has the risk of ending up judged treasonous as well, and that's all that matters to a risk averse company.

tekstar··on 70TB of Parler users’ messages, videos, and posts leaked by security researchers
All the claims about the big tech censoring Parler got it wrong. It's not about censure. It's about legality, and Parler fucked themselves.

Apple told Parler to moderate their extremist content, and Parler refused. At that point, if Apple left Parler on the App Store, Apple would be complicit. Same story played out for all the services.

And guess what, treason by definition is infectious. Giving aid to an enemy of the United States. So Apple at that point would be opening themselves to a huge legal liability if they kept the app available. Nothing has been proven in court but big tech is naturally risk adverse.

If Parler has agreed to moderate extreme content, even if they had done so dragging their feet, they would still be alive.

tekstar··on Show HN: Fourhands is a P2P MIDI jam room for pianists
I'm working in the same space, but it's a sequencer so only notes entered into the DAW are shared amongst participants, and the playhead isn't synced.

Still very early days but you can try it out at https://sequencer.party - you can share session URLs with friends and jam.

tekstar··on Show HN: I built a 4kb alternative to React, Vue, etc for building web UIs.
I use Preact. I like it a lot. Started with pure ES6, Preact, and htm templates - no transpilation step! As the project got bigger I migrated to Typescript and start using it's built-in JSX compiler. Was a pretty easy step. My only package dependencies for a long time were preact and preact-router. Recently moved to webpack to support proper packaging of node modules when I moved from REST to GraphQL. But no babel, and it's been really nice to slowly increment the build complexity only when it's been needed.
tekstar··on No meetings, no deadlines, no full-time employees
I worked at a FAANG-level startup for a number of years and am now doing my own thing, with hopes of building a stable part-time business. This appeals to me.

In any company, employee trust is a huge benefit when it works and a huge concern when it's missing. this Gumroad model would require even higher trust to operate so independently and not incrementally add more "check up" meetings and slack etc etc.

Can anyone from Gumroad speak to how they built the team? Hiring some roles from your customer community makes a lot of sense as they already will have some feeling of propriety. Have there been bad hires? I guess having everyone on contract makes it easier to move on.

tekstar··on The Cole-Bar Hammer, a 7-year old Kickstarter that is still going
Just to chime in, I bought a CNC and 2 3D printers from Kickstarter over the years. One was junk, one was a scam, and the other ran out of funds before they shipped a unit.

The first CNC (MyDIYCNC) was 6 months late and the quality was horrible. The two MDF walls that held the metal Y axis in place were pre-drilled more than an inch apart. It was sold as a budget CNC printer but in reality was basically useless except as a learning exercise in what matters in CNC design.

Of the two 3D printers I bought, neither arrived. The Peachy Printer was a cute, simple, and cheap design.. after many updates of adding complexity and delays one founder accused the other founder of running off with the funds and buying a house, but did so in such a weird way one has to wonder what the hell actually happened.

The other 3d printer I don't even remember the name.. it was supposed to be high quality and cost around $300 CAD. Manufacturing delays and issues, they cancelled the whole thing and shipped nothing.

tekstar··on Show HN: PSX Party – Online Multiplayer Playstation 1 Emulator Using WebRTC
Nice job! Early in the pandemic me and some buds spent a few nights on voice chat and snes.party, it helped us reconnect and reduce our isolation.
tekstar··on I Bought Apple Silicon
Nah.

I mean, part of it is that I don't work at a big company that requires I transpile 100k LOC every time I want to see my work on screen any more while attending to 100 slack channels at the same time, but I'm typically running Goland, VSCode, Safari (what I use personally), and Firefox (better for testing my web code) at the same time and it's snappy. Maybe 2-second compile typescript or go compile times, no noticeable slowdowns switching apps etc.

My laptop: MacBook Pro (Retina, 15-inch, Late 2013) 2.3 GHz Quad-Core Intel Core i7 16 GB 1600 MHz DDR3

From what I understand, USB-C Macbooks that came after this magsafe generation had to CPU throttle earlier to deal with thermal issues, so despite better specs they couldn't get pushed without overheating. As well as heat/throttle issues if you try to charge it from the wrong USB-C port.

tekstar··on I Bought Apple Silicon
What I find a bit wild is that the author was using a laptop newer than my late 2013 MacBook Pro, and said everything was sluggish. My maxed 2013 pro is still super fast, but it seems like all the USB-C MacBooks that came afterwards sacrificed performance for.. what, thickness?
tekstar··on How I got to $9.99 MRR after 7 years
What a grand journey!
tekstar··on Facebook being investigated in Germany for tying Oculus use to Facebook accounts
Both of your examples have recourse, and do not brick expensive hardware. The Oculus/FB example is much worse.
tekstar··on Progress Over Perfection
Stopped reading when they referred to their own ambitions as a "big ask"
tekstar··on Building a scalable e-commerce data model
You're going to want to run analytics, and to do that you need comparable data. Legacy data was a huge problem for the e-commerce giant I used to work at, even in The SQL database with a schema. NoSQL would be a silly non starter for any serious data modelling effort after a couple years of migrations outages, and code changes.
tekstar··on Down Here, They Sometimes Call It 'Boy'
> But I can see why people up their dosages.

I would suggest you REALLY self assess carefully - are you not sleeping because of actual fresh pain? Or are you not sleeping because your body wants a nice fuzzy cloud of opioids to crash on?

Your first night of sober sleep is going to be a bit tougher no matter what, I suggest you try acedominophen and ibuprofen alternating to cut the surgical pain but you'll still need to get through the lack of narcotics

tekstar··on Down Here, They Sometimes Call It 'Boy'
I don't know the details of your surgery but I've been prescribed narcotics three times post-surgery and have always halved my prescribed dosage after day 2 and stopped completely by day 5. Then we bring the extras To get destroyed at a drug drop off (local pharmacies offer this here)
tekstar··on I Made a Self-Quoting Tweet
I laughed out loud at the other twitter reply asking ThreadReaderApp to unroll the thread
tekstar··on Ask HN: Where are the Beautiful clean HTML/CSS templates?
I struggled with this a lot, and was never satisfied, until I spent a few weeks doing CSS & flexbox lessons from Lynda.com (free from my library).

Now I can get mostly where I want to go without frameworks and it is very empowering. It's just another language, it's not that tough.

tekstar··on Ask HN: Where are the Beautiful clean HTML/CSS templates?
now that Bootstrap uses the system font stack, using it doesn't have to scream "I AM USING BOOTSTRAP" any more
tekstar··on Cheap Router Table and Lift
I played around with routers and CNCs for a few years in my garage at my old house. A key finding, obvious to anyone with experience, is that routers generate a lot of very fine dust, compared to most saws or drills. And this dust will stay there forever without adequate collection. Even now years later and after a house move I'll find a box or something from that garage that just makes my eyes itch and water the moment I touch it.
← PreviousPage 6 of 11Next →