Hacker News new | past | comments | ask | show | jobs | submit | DavidBuchanan's comments login

Server seems fine, I think it just doesn't work on Safari


Author here - this was just a quick PoC, I'm pleasently surprised that it seems to be handling all the HN traffic.

It's served from a python script using aiohttp, behind nginx, on a $16/year VPS.

I might make a github repo with more details, but in the meantime, here's the server script: https://pastebin.com/ykUeppqc (apologies for pastebin, I don't have access to my github account at present)

Just in case the server dies, there's a video of it here: https://twitter.com/David3141593/status/1388602027484356614


Might I ask where you found a $16/year VPS, and whether you'd recommend the provider?


Just get the two free VMs from Oracle Cloud.

https://www.oracle.com/cloud/free/#always-free

Or four ARM VMs. Nice. They didn't have those when I signed up.


While this is a good deal, If you are not familiar with cloud management, you should stay away. Only use it if at least:

1. You know how to create alerts on spending (bugdets)

2. You know exactly what VMs are included in the free tier.

3. You know about networking, VPC, DHCP, IP - Ephemeral vs Reserved

Otherwise a simple mistake may cost you $$$.


It is impossible to spend any real money (as opposed to their $300 credit) without switching to a paid account, which is a multi-step process that you can't perform accidentally.

After the 30 day trial expires your account is switched to the "always free" mode. It does not allow creating any paid resources which are not marked as "always free".


I was curios and read about it, and you are correct. But just like I said, there are many pitfalls. for example - I assumed you can change your paid plan freely but:

"...After I upgrade my account, can I downgrade?

There is no option to downgrade your account"

https://www.oracle.com/cloud/free/faq.html


It's with HostUS. I got a coupon a few years ago (via LowEndBox), and it's been renewing at the same rate ever since. I have no complaints about them, but I'm not sure you can get the same pricing today.


> Might I ask where you found a $16/year VPS, and whether you'd recommend the provider?

Here is how you can get the answer to this question yourself:

    $ dig <website-domain>
you'll get its IP(v4) address.

    $ whois <IPv4>
you'll see to whom this IP is registred via RIPE.

In this case, you can find that the AS it belongs to is also a host provider. They sell KVM hosts for $15.95 / month.


Didn't know you can use whois on IP addresses and not just domains.


Not exactly what you asked for but Oracle Cloud has a generous "Always Free" tier which allows you to spin up 2 VMs with decent amount of storage.

I get that people are apprehensive of using anything from Oracle but so far I haven't had any issues.


> so far I haven't had any issues.

Aren't the reported issues with Oracle that they charge you retrospectively? You wouldn't know if you have issues yet!


I'm seeing a big banner saying ""When your trial is over, your account will be limited to Always Free resources."" which is pretty reassuring.


At this price point you are barely paying for the IPv4 address. It will be an OpenVZ container.

I had a $15/yr VPS with BuyVM.net for many years and would absolutely recommend them at this price point, except that they have shut down this offering and switched to KVM (it's for the best). Ramnode.com are honest enough and still offer the "192MB SVZ" plan for $15/yr.

I would rather scrape by on the GCS/AWS/Heroku free tier, Netlify / GH pages, ...rather than going back to OpenVZ. Better to pay just a few dollars more for a proper KVM VPS.


While most of the black friday deals are shams, but when it comes to VPS they are actually good.

If you're looking for such deals cyber monday / black friday is when you will often find such deals.


Indirect answer, checkout lowendbox[0] for information and reviews on cheap hosting and VPS.

[0]: https://lowendbox.com/


LowEndBox is full of scammers. https://talk.lowendspirit.com/ is cleaner.


fwiw, you can do network throttling entirely on the client, but unfortunately only Chrome implements the required APIs.

Anyway, here's a tool for loading images at 2g speeds https://static-misc-3.glitch.me/slow-img-load/


That's neat! For those curious, the API seems to be:

https://developer.mozilla.org/en-US/docs/Web/API/TransformSt...


'adamation' is a great pun


This is my "textbook" implementation of AES128, which follows the FIPS specification as closely as possible (in python): https://github.com/DavidBuchanan314/aes-playground

It also includes from-scratch Galois field arithmetic functions.


Looks really nice and educational. I'm a big fan of reeinventing the wheel for understanding certain primitives better. I did the same for ECC. Once it's done it's really liberating because you don't have to consider these things black magic anymore.


Here's my writeup/solution for the same challenge, represented as a diagram:

https://twitter.com/David3141593/status/1253122980525334529


Your pinned tweet is quite fascinating.


Cool diagram. Putting the shellcode in headers is very innovative. I didn't have too much assembly knowledge to trim it further during the competition.


This was recently suggested to me on Twitter, I'll have a look at implementing it tomorrow.

https://twitter.com/arnaud_lb/status/1212512382859251712


It isn't massively complex, but it did require some custom encoding/decoding logic. I plan to write a blog post on this some time soon...


Not quite, ICC profile chunk size limits.


And yet, nobody has done the same for Twitter until now.

The difference is that twitter applies a series of operations to all uploaded image, stripping EXIF data, recompressing, etc., which would normally be difficult to work around.


Did people do this back in the day? 4chan used to be totally fine with just uploading a jpeg concatenated with a zip, but I haven't seen this ICC profile trick before today.


Well, 4chan served you the original file, so you didn't need to evade image processing at all


> The main issue with RDTSC is that task-switches may cause your thread of execution to change cores or mess up your timing

I got around this by running my benchmarks in a kernel module, with interrupts disabled. Obviously this is only possible under certain circumstances.

I also disabled caching via the CR0 register for maximum repeatability, although of course that isn't at all reflective of "real world" performance, so it depends on what you're actually trying to measure.


I performed an experiment based on this idea - I wired up a clicky relay to the numlock LED (via a transistor), and glued it to a decent Dell keyboard. Then, I rigged up a python script to toggle the numlock led on each key press/release event.

Honestly, typing experience wasn't too different to a real mechanical keyboard.


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

Search: