Well I have just finished a release of my build tool, which I’m very pleased with. I have been trying to “prove” it’s utility by builting existing software with it. It was able to make scripts with it to build jq and bash, so it’s pretty effective.
and then makes processes those build rules to execute them in parallel respecting dependency order.
the bash scripts themselves that generate files are pretty ugly, my tool so far is just the engine part. A nice declarative UI to produce the TSV files can be made separately.
I’m working on an array programming language with a guy I met on Reddit. Not sure if he’s on here. I’ll be adding to the parser and maybe building a small type checker this week.
This is a project very similar to dn42, which I admire greatly, though I never had full success with getting it configured properly. Working on a much smaller scale definitely helps to better understand what I’m doing other than blindly doing it to meet all the requirements. It’s all very interesting considering there isn’t a ton of readily-available documentation for using bgp on things beside cisco equipment.
I worked through the official tutorial this weekend and so far, I (mostly) like what I see. There are some weird quirks here and there, but I think I would publish a blog post in a day or two about first impressions.
If you write that blog post could you post it here (and maybe in reply to this comment, too, so that I see it?). I’m just starting out with nim, coming from years of Python and JS. I’m finding it more complex than I expected, especially as I’m not used to fighting a compiler. I came into it expecting something like “Python with static types” but it’s only kinda that.
Working on my ‘Generative Art’ presentation using Haskell in the browser. Using the Reflex FRP package, amongst others, to make SVG, HTML5 Canvas, and WebGL dance at my bidding.
Won’t have time to wire in the audio inputs before the talk though, which is a bit disappointing.
That genuinely sounds interesting. The only experience I have with Generative Art is using p5.js after binge watching days worth of Dan Shiffmans coding train.
I’ll post a link to the talk and code when it’s up. Otherwise I’m certainly happy to natter about it and related topics. I’m usually lurking in freenode in #qfpl, #reflex-frp, or #haskell-au :)
I just finished developing a workaround for a Spring Security bug. It turns out, a new HttpFirewall feature enabled by default in Spring Security 4.2.4 (April 2018) was silently dropping all requests from clients that did not support cookies. The Spring Security team has a fix slated for version 5.1 (time undetermined). My workaround puts web application developers back in control of the firewall feature.
It was great talking at the Decentralised Web Summit, and the IPFS Lab Day last week. I’ve just finished moving the Peergos PKI into IPFS itself, and this week I’m hoping to make that pki mirrored on every node (for privacy of key lookup queries). And think more about improving the scalability of the social side of Peergos.
We also want to implement a new api call in IPFS which I dicussed with them last week - essentially a p2p http proxy (independent of dns/ip).
After some time off recovering from a case of ‘metal in the eyeball’, I’m getting back into a number of things:
For $CLIENT1, regular ongoing dev, plus still working on the Model migration.
For $COMPANY, I’ve started development (most of which is refactoring/changing existing things) for Bamboo v6
For $HOME, I still have a bunch of wiring to do, to get the existing outside lights switched from inside the house, and to light the new room ‘properly’. Additionally, it turns out wifi signals don’t penetrate solid concrete very well, and 10+GB media files don’t stream well over shitty wifi, so it looks like I’ll be running ethernet through at least one concrete wall, so movies don’t constantly pause to re-buffer.
I’m working on Tapestry my static site generator written in PHP and using the Plates template system. It’s competing with Sculpin (twig) and Jigsaw (blade).
I say competing… I have been working on it for nearly four years and so far I am the only user I know of.
Getting back into gear and slowly winding up Real Life Stuff™ again after taking a break from all that for about two weeks. It was very restful. As a consequence, the first day where I was actively engaged with everything again hit me like a sack of bricks and I have a hunch I will sleep very well tonight. Other things going on:
Migrating more of my hodge-podge of small utility programs and fish functions I accumulated over the years to emacs, which seems to finally have clicked with me (working inside a lisp machine is amazing)
Catching up on my pocket queue (130 articles left, it was a good idea to bunker all that material, honest)
Working through Haskell From First Principles, slowly but steadily. Setting aside the first hour of the day for doing just that and learning has worked wonders, and so every morning has 06:30 - 07:30 spent on learning whatever project/book I am working on at that time. I might want to widen that window eventually, but so far it’s working very well, as my concentration is perhaps the highest it will be that day.
Preparations for contract negotiations
Paperwork. Oh my god, so much paperwork.
And of course, the mountains of stuff I have forgotten that will provide a rude awakening during this week, but established systems make me confident that’s not going to be more than two or three things.
Completed a revamping of DependentTypes for F# yesterday, I think much more useful and includes dependent pairs. I still need to add tests of new functionality and document before I release.
I’m hosting my first TLA+ workshop this week. Beyond excited and beyond nervous.
Good luck!
Kick ass!
Wish I was in Chicago! Do you ever come out to Seattle?
I’d be totally down to host a workshop in Seattle!
Well I have just finished a release of my build tool, which I’m very pleased with. I have been trying to “prove” it’s utility by builting existing software with it. It was able to make scripts with it to build jq and bash, so it’s pretty effective.
Do you have examples? I’d like to see the build script for jq.
the script is here https://gist.github.com/rain-1/f3434f4b12147d5ef62369e511a184de#file-jq-makesfile I left in the make bits as comments for comparisons sake
which generates this input for the ‘makes’ tool: https://gist.github.com/rain-1/f3434f4b12147d5ef62369e511a184de#file-jq-example
and then makes processes those build rules to execute them in parallel respecting dependency order.
the bash scripts themselves that generate files are pretty ugly, my tool so far is just the engine part. A nice declarative UI to produce the TSV files can be made separately.
So is your goal to write these makes files by hand or generate them with scripts?
they can be generated by a DSL either something similar to the make language, or embedded as a python library.
Neat, thanks!
Any reason your scripts target /bin/sh when they’re actually Bash scripts?
They won’t run, as-is on Debian, for example.
oh thats just a mistake
For fun, I’m getting Factor proper high-resolution support under Linux, if I can.
At work, I’ll be trying to restore automated testing to our two lonely JavaScript libraries.
I recently wrote a blog article on factor, and I’m looking forward to playing EXAPUNKS.
I’m working on an array programming language with a guy I met on Reddit. Not sure if he’s on here. I’ll be adding to the parser and maybe building a small type checker this week.
More BGP darknet work. We connected two bgp routers last week :)
Are you the guy behind playing battleship over BGP?
Unfortunately no, I’m nowhere near that cool.
This is a project very similar to dn42, which I admire greatly, though I never had full success with getting it configured properly. Working on a much smaller scale definitely helps to better understand what I’m doing other than blindly doing it to meet all the requirements. It’s all very interesting considering there isn’t a ton of readily-available documentation for using bgp on things beside cisco equipment.
Picking up Nim.
I worked through the official tutorial this weekend and so far, I (mostly) like what I see. There are some weird quirks here and there, but I think I would publish a blog post in a day or two about first impressions.
If you write that blog post could you post it here (and maybe in reply to this comment, too, so that I see it?). I’m just starting out with nim, coming from years of Python and JS. I’m finding it more complex than I expected, especially as I’m not used to fighting a compiler. I came into it expecting something like “Python with static types” but it’s only kinda that.
I just published it. Here’s a link - https://sgoel.org/posts/nim-first-impressions/ .
Working on my ‘Generative Art’ presentation using Haskell in the browser. Using the Reflex FRP package, amongst others, to make SVG, HTML5 Canvas, and WebGL dance at my bidding.
Won’t have time to wire in the audio inputs before the talk though, which is a bit disappointing.
That genuinely sounds interesting. The only experience I have with Generative Art is using p5.js after binge watching days worth of Dan Shiffmans coding train.
I’ll post a link to the talk and code when it’s up. Otherwise I’m certainly happy to natter about it and related topics. I’m usually lurking in freenode in #qfpl, #reflex-frp, or #haskell-au :)
I just finished developing a workaround for a Spring Security bug. It turns out, a new
HttpFirewallfeature enabled by default in Spring Security 4.2.4 (April 2018) was silently dropping all requests from clients that did not support cookies. The Spring Security team has a fix slated for version 5.1 (time undetermined). My workaround puts web application developers back in control of the firewall feature.It was great talking at the Decentralised Web Summit, and the IPFS Lab Day last week. I’ve just finished moving the Peergos PKI into IPFS itself, and this week I’m hoping to make that pki mirrored on every node (for privacy of key lookup queries). And think more about improving the scalability of the social side of Peergos.
We also want to implement a new api call in IPFS which I dicussed with them last week - essentially a p2p http proxy (independent of dns/ip).
Building out OpenBSD.Amsterdam
After some time off recovering from a case of ‘metal in the eyeball’, I’m getting back into a number of things:
For
$CLIENT1, regular ongoing dev, plus still working on the Model migration.For
$COMPANY, I’ve started development (most of which is refactoring/changing existing things) for Bamboo v6For
$HOME, I still have a bunch of wiring to do, to get the existing outside lights switched from inside the house, and to light the new room ‘properly’. Additionally, it turns out wifi signals don’t penetrate solid concrete very well, and 10+GB media files don’t stream well over shitty wifi, so it looks like I’ll be running ethernet through at least one concrete wall, so movies don’t constantly pause to re-buffer.I’m working on Tapestry my static site generator written in PHP and using the Plates template system. It’s competing with Sculpin (twig) and Jigsaw (blade).
I say competing… I have been working on it for nearly four years and so far I am the only user I know of.
Getting back into gear and slowly winding up Real Life Stuff™ again after taking a break from all that for about two weeks. It was very restful. As a consequence, the first day where I was actively engaged with everything again hit me like a sack of bricks and I have a hunch I will sleep very well tonight. Other things going on:
And of course, the mountains of stuff I have forgotten that will provide a rude awakening during this week, but established systems make me confident that’s not going to be more than two or three things.
Working on making it easier to add sources and sinks to Wallaroo so that folks can build their own.
When I have time I’ll also be working on the materials for my Pony workshop at ICFP.
Finishing up and launching PoG2 on the Merit blockchain. My body is ready.
Completed a revamping of DependentTypes for F# yesterday, I think much more useful and includes dependent pairs. I still need to add tests of new functionality and document before I release.