7 votes

What programming/technical projects have you been working on?

This is a recurring post to discuss programming or other technical projects that we've been working on. Tell us about one of your recent projects, either at work or personal projects. What's interesting about it? Are you having trouble with anything?

4 comments

  1. crdpa
    Link
    In my quest to start working as a software developer I've been learning Go for some time and one of the projects is doing a personal blog/portfolio in Go so i have something to show. Here it is:...

    In my quest to start working as a software developer I've been learning Go for some time and one of the projects is doing a personal blog/portfolio in Go so i have something to show.

    Here it is:

    Site: https://crdpa.net

    Source code: https://github.com/crdpa/site

    I have other little projects too, like Musyca in python/sqlite and Kolekti in Go (both work together).

    Anyway, feel free to give tips, criticisms and any feedback. Sorry for my english, i'm from Brazil.

    4 votes
  2. FluffyKittens
    (edited )
    Link
    I have written (what is in my opinion) the best software of my career so far. Clocking in at less than 20 lines of code, I present: my highly portable, zero-config HTTP logging service. It's the...

    I have written (what is in my opinion) the best software of my career so far. Clocking in at less than 20 lines of code, I present: my highly portable, zero-config HTTP logging service.

    It's the culmination of two weeks of me trying to find the most braindead, easy-to-use logging setup that can be thrown on a VPS behind Caddy and used for home network monitoring. If I had had more than a passing knowledge of CGI (or knew about busybox httpd), I could've cranked this out in ten minutes, but it took a lot of trial and error instead. That's programming, I guess.

    Usage example:

    user@domain:~/Desktop$ curl -X 'POST' -d "hello, line 1" localhost:8080
    curl: (52) Empty reply from server
    user@domain:~/Desktop$ curl -X 'POST' -d "hello, line 2" localhost:8080
    curl: (52) Empty reply from server
    user@domain:~/Desktop$ curl -X 'POST' -d "hello, line 3" localhost:8080
    curl: (52) Empty reply from server
    user@domain:~/Desktop$ curl localhost:8080
    hello, line 1
    hello, line 2
    hello, line 3
    
    2 votes
  3. inwardpath
    Link
    A few little things: have my own home on the web again, inwardpath.net - not a ton there yet but i do have a lot in mind that i want to post there rebuilt my print server at home yesterday. love...

    A few little things:

    • have my own home on the web again, inwardpath.net - not a ton there yet but i do have a lot in mind that i want to post there
    • rebuilt my print server at home yesterday. love re-purposing old hardware. Dell Inspiron 3050 Micro is now a "DietPi for PC" linux box running CUPS and serving my Brother laser printer to my network with ease. took like an hour to rebuild the whole thing software-wise. love that.
    • just acquired a Wyse 5070 Extended Dell thin-client box w/ PCIe Intel 4-port NIC which will be a powerful replacement (OPNSense, probably) for my Ubiquiti Edgerouter-X. excited to set up my own router/firewall, mostly just for fun. ER-X is rock solid but I wanted more oomph and capability and to potentially slowly get away from Ubiquiti anyway
    1 vote
  4. skybrian
    Link
    I decided to write a browser app to read the serial port (a Chrome-only API, alas). It's been years since I did any web development, and that was largely in Dart. So it's interesting to see where...

    I decided to write a browser app to read the serial port (a Chrome-only API, alas). It's been years since I did any web development, and that was largely in Dart. So it's interesting to see where things are now. I'm trying to keep it fairly minimalist, but here are some things I've tried.

    • Typescript seems pretty nice, but actually doing type checking using tsc --noEmit seems very slow, and it's surprising that there doesn't seem to be a faster alternative. Type checking within VS Code works well.
    • I'm liking esbuild for fast builds with minimal dependencies. It has a --servedir option that automatically recompiles when you reload the web page.
    • There's a library called fast-check which is the JavaScript equivalent of Haskell's quickcheck library. It's basically about fuzz testing. The API for generating random test data is kind of monad-based, which is limiting and annoying because I end up writing very functional-looking code and it's not my preferred style. But I do like writing property tests and its automatic minimizing of failing tests.
    • The mainstream testing frameworks seem really heavyweight, so I'm avoiding them for now.
    • There's a small test framework called Ava that's nice, but it only runs tests in Node. Since I'm writing a Chrome web app, this seems less than ideal. Any idea what the web equivalent would be?
    • The Streams API (needed for reading the serial port) seems excessively complicated, but I think I'm getting the hang of it.
    1 vote