<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: radiac</title><link>https://news.ycombinator.com/user?id=radiac</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 10 Jun 2026 11:45:44 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=radiac" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by radiac in "Building a full Django project, starting with a single file"]]></title><description><![CDATA[
<p>Mine certainly does - we lost so much when we killed off our cgi-bin/guestbook.pl</p>
]]></description><pubDate>Wed, 24 Apr 2024 19:42:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=40148687</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=40148687</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40148687</guid></item><item><title><![CDATA[New comment by radiac in "Building a full Django project, starting with a single file"]]></title><description><![CDATA[
<p>Thank you, it's great to have positive feedback!</p>
]]></description><pubDate>Wed, 24 Apr 2024 19:39:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=40148654</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=40148654</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40148654</guid></item><item><title><![CDATA[New comment by radiac in "Building a full Django project, starting with a single file"]]></title><description><![CDATA[
<p>Thanks! Yes definitely, I think it's a great fit for anything self-contained and limited scope that doesn't need a lot of code. I've certainly found having an easy way to run a single file using Django's ORM is pretty handy.<p>Regarding API serving, I'm planning on making it easier to use third party apps; the main obstacle is registering `includes` urls, which is doable at the moment but involves manually appending a path to `nanodjango.urls.urlpatterns`. I want to expand route registration to give a nicer internal api, then once that's in place Django Ninja should work pretty much out of the box - the only different should be how you register the url.</p>
]]></description><pubDate>Wed, 24 Apr 2024 19:38:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=40148643</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=40148643</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40148643</guid></item><item><title><![CDATA[New comment by radiac in "Building a full Django project, starting with a single file"]]></title><description><![CDATA[
<p>Me too, I'm convinced it has a place - the number of single file projects over the past few years can't be a coincidence.<p>For me the two missing pieces were models and a path to migrate to a full project once it outgrew a single file, so I wrote nanodjango (<a href="https://github.com/radiac/nanodjango/">https://github.com/radiac/nanodjango/</a>, formerly django-flasky) - you can use the ORM and admin site, and I recently added a "convert" command to automatically break up a single page app into a full Django project structure.<p>I've been using it for a couple of years for prototyping/experimenting and putting together small apps, and with the new features this year feels like it's a really practical alternative to flask.</p>
]]></description><pubDate>Wed, 24 Apr 2024 06:23:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=40141273</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=40141273</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40141273</guid></item><item><title><![CDATA[New comment by radiac in "Ask HN: Freelancer? Seeking freelancer? (June 2023)"]]></title><description><![CDATA[
<p>SEEKING WORK | UK | Remote | Python developer for 15+ years<p>I have been a Python and Django specialist for over 15 years, working as a full stack developer for 20 years and as a hands-on CTO for four at one of the UK's leading Python and Django consultancies.<p>Core technologies: Python, Django, JavaScript, Linux and container-based ops.<p>Skills: Project scoping and implementation, team building and management, technical strategy.<p>Most of my career has been in consultancy/agency environments where every project is different, so I have production experience working in a wide range of languages, libraries, frameworks and platforms in both frontend and backend - including Wagtail and DRF, React and htmx, and Docker and k8s.<p>I am available for one-offs, part-time, or long-term contracts, in either development or advisory roles. Take a look at my open source projects for a sample of my work, or get in touch for my full CV.<p><a href="https://radiac.net/hire/" rel="nofollow">https://radiac.net/hire/</a> | <a href="https://github.com/radiac">https://github.com/radiac</a> | hn06@radiac.net</p>
]]></description><pubDate>Thu, 01 Jun 2023 23:27:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=36158847</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=36158847</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36158847</guid></item><item><title><![CDATA[New comment by radiac in "Ask HN: Freelancer? Seeking freelancer? (May 2023)"]]></title><description><![CDATA[
<p>SEEKING WORK | UK | Remote | Lead developer/CTO contract<p>I have been a Python and Django specialist for 15 years, working as a full stack developer for over 20 years and as a hands-on CTO for the last four at one of the UK's leading Python and Django consultancies. I am immediately available for interviews, either for one-offs or long-term contracts.<p>Skills:<p>* Project scoping and estimating, team building, recruitment and resource management<p>* Directing technical strategies and solutions<p>* Implementation of anything from an MVP through to a production-ready deployment<p>* Advocating for code quality, linting, testing and documentation<p>* Comfortable working closely with clients<p>Technologies:<p>* Backend: Python, Django, DRF, htmx, Flask and FastAPI and more<p>* Frontend: JavaScript, TypeScript, Alpine, React, Vue, Tailwind<p>* Servers: Linux, AWS, GCE, Azure; CI/CD; PostgreSQL, nginx, Traefik, Docker, k8s<p><a href="https://radiac.net/hire/" rel="nofollow">https://radiac.net/hire/</a> | <a href="https://github.com/radiac">https://github.com/radiac</a> | hn05@radiac.net</p>
]]></description><pubDate>Tue, 02 May 2023 01:22:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=35781907</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=35781907</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35781907</guid></item><item><title><![CDATA[New comment by radiac in "Ask HN: Freelancer? Seeking freelancer? (February 2023)"]]></title><description><![CDATA[
<p>SEEKING WORK | UK | Remote | Lead developer/CTO contract<p>I have been a Python and Django specialist for 15 years, working as a full stack developer for over 20 years and as a hands-on CTO for the last four at one of the UK's leading Python and Django consultancies. I am immediately available for interviews, either for one-offs or long-term contracts.<p>Skills:<p>* Project scoping and estimating, team building, recruitment and resource management<p>* Directing technical strategies and solutions<p>* Advocating for code quality, linting, testing and documentation<p>* Comfortable working closely with clients<p>Technologies:<p>* Backend: Python, Django, DRF, htmx, Flask and FastAPI and more<p>* Frontend: JavaScript, TypeScript, Alpine, React, Vue, PostCSS<p>* Servers: Linux, AWS, GCE, Azure; CI/CD; PostgreSQL, nginx, Traefik, Docker, k8s<p><a href="https://radiac.net/hire/" rel="nofollow">https://radiac.net/hire/</a> | <a href="https://github.com/radiac">https://github.com/radiac</a> | hn02@radiac.net</p>
]]></description><pubDate>Thu, 02 Feb 2023 13:25:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=34626167</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=34626167</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34626167</guid></item><item><title><![CDATA[New comment by radiac in "Modoboa – Open Source email server"]]></title><description><![CDATA[
<p>I self hosted for myself and some clients for years. As long as you set up everything correctly it's fairly pain-free, but it's definitely worth getting on as many abuse notification lists as you can find - I wasn't doing anything remotely spam-related but still got blacklisted by hotmail twice and some other places a couple of times; as I remember it getting cleared was just a case of jumping through a few hoops, but I still needed to find out about the problem before my clients did, and find the hoops to jump through (which was never easy).<p>I found the main issue was maintenance. Once it was set up it didn't need too much poking, but I was still responsible for my own downtime and backup, and every few years I'd need to move it to a new server. I ran a secondary relay so at least migrating without downtime was relatively easy, but it was still a multi-day process while I moved configurations, rules and mail across, waited to trust DNS propagation etc. And in the back of my mind if someone didn't reply in a timely manner, I couldn't ever stop wondering if I'd missed a blacklist somewhere, or if a provider had just decided to spambin everything from my IP.<p>The other pain point was that as it was a necessary service rather than something that generated profit, I didn't want to put any serious time into improving things for myself. That meant I was using IMAP+Thunderbird with whatever shonky open source webmail-du-jour I'd set up on the server that year, combined with various shell scripts and notes in wikis about how to manage users, forwarding rules etc. It worked, but it was never easy, and was never slick.<p>After I took a job where we all used gmail, I got used to things being easy and slick, and decided to stop self-hosting and move my mail to dedicated mail providers (fastmail and sendgrid in my case, ymmv). Haven't looked back.<p>Self hosting you mail is something I'd recommend doing once for fun to see how it all works, but unless you have a clear and definite reason to go it alone, it's definitely worth paying someone else to do it for you.</p>
]]></description><pubDate>Sun, 19 Sep 2021 13:48:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=28584290</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=28584290</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=28584290</guid></item><item><title><![CDATA[New comment by radiac in "Was Acorn's RISC OS an under-appreciated pearl of OS design?"]]></title><description><![CDATA[
<p>Having an OS which boots from hardware is always a feature to me - no matter how badly you screw up your system, you just do a hard reset (boot holding R) and get a working OS and GUI. You can still patch it by defining a boot app, but the core system is always there, safe from mishap and malware.<p>And yes, the OS was starting to show its age (both graphically and with its cooperative multitasking) by the time Acorn was broken up, but at its peak it was miles ahead of the competition, and was definitely an under-appreciated pearl.</p>
]]></description><pubDate>Sun, 28 Jun 2020 17:53:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=23670619</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=23670619</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=23670619</guid></item><item><title><![CDATA[New comment by radiac in "Show HN: Regex Cheatsheet"]]></title><description><![CDATA[
<p>So did I: <a href="https://github.com/radiac/python-perl/" rel="nofollow">https://github.com/radiac/python-perl/</a></p>
]]></description><pubDate>Fri, 31 Jan 2020 19:03:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=22204481</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=22204481</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=22204481</guid></item><item><title><![CDATA[Notes on the ShadowBrokers hack of the NSA]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.tristancaulfield.com/posts/2016/Aug/16/notes-on-the-shadowbrokers-release/">https://www.tristancaulfield.com/posts/2016/Aug/16/notes-on-the-shadowbrokers-release/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=12298513">https://news.ycombinator.com/item?id=12298513</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 16 Aug 2016 16:26:23 +0000</pubDate><link>https://www.tristancaulfield.com/posts/2016/Aug/16/notes-on-the-shadowbrokers-release/</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=12298513</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=12298513</guid></item><item><title><![CDATA[New comment by radiac in "TinyCert – Become Your Own PKI/CA Authority in a Matter of Minutes"]]></title><description><![CDATA[
<p>As you say, I'd prefer to run this sort of thing locally - half the point of running your own CA is that you have full control over it.<p>I wrote caman (<a href="https://github.com/radiac/caman" rel="nofollow">https://github.com/radiac/caman</a>), a bash script wrapper for openssl with what looks like a similar syntax to etcd-ca. I posted about it on HN a while back, but it now also supports SAN certificates and intermediate CAs.</p>
]]></description><pubDate>Tue, 22 Sep 2015 08:02:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=10257256</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=10257256</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=10257256</guid></item><item><title><![CDATA[New comment by radiac in "Sslip.io: A Valid SSL Certificate for Every IP Address"]]></title><description><![CDATA[
<p>Exactly - there's no need for a service like this when you can have self-signed certificates. Create a CA cert to distribute across your team, then use it to sign host, wildcard and SAN certs as needed. If you need to share your site with people who don't have your CA cert, it's time to get a real one.<p>In case it helps anyone, I wrote an openssl wrapper with a simple syntax to manage self-signed CAs: <a href="https://github.com/radiac/caman" rel="nofollow">https://github.com/radiac/caman</a></p>
]]></description><pubDate>Tue, 08 Sep 2015 15:27:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=10186253</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=10186253</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=10186253</guid></item><item><title><![CDATA[New comment by radiac in "Show HN: Caman – A self-signing certificate authority manager"]]></title><description><![CDATA[
<p>I've added an experimental branch with SAN support, but I haven't had a chance to test it fully yet; any feedback would be appreciated.</p>
]]></description><pubDate>Thu, 20 Aug 2015 18:37:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=10093745</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=10093745</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=10093745</guid></item><item><title><![CDATA[New comment by radiac in "Show HN: Caman – A self-signing certificate authority manager"]]></title><description><![CDATA[
<p>I hadn't come across this when I wrote caman; from the looks of things caman is simpler to use, but missing a couple of features - alt hostname support for SAN certificates (which I'm adding at the moment and should be up later today) and ability to use a subsidiary certificate authority.<p>I wrote caman because I could never remember what to type, so it has simple syntax - 4 commands, to add a new host, sign, revoke and renew; the only argument they take are the hostname. Configuration is a one-off when setting up your CA - there are two openssl config files with sensible defaults based on openssl best practice, with a few values for you to customise, and some basic templating for caman to fill out later.</p>
]]></description><pubDate>Thu, 20 Aug 2015 18:19:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=10093630</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=10093630</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=10093630</guid></item><item><title><![CDATA[Show HN: Caman – A self-signing certificate authority manager]]></title><description><![CDATA[
<p>Article URL: <a href="https://github.com/radiac/caman">https://github.com/radiac/caman</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=10091532">https://news.ycombinator.com/item?id=10091532</a></p>
<p>Points: 26</p>
<p># Comments: 6</p>
]]></description><pubDate>Thu, 20 Aug 2015 13:01:37 +0000</pubDate><link>https://github.com/radiac/caman</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=10091532</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=10091532</guid></item><item><title><![CDATA[New comment by radiac in "Django 1.7 Released"]]></title><description><![CDATA[
<p>How good are Django 1.7 migrations at detecting things which have already happened? In particular, can you safely maintain South migrations alongside Django ones, or do you have to force users to switch?<p>The problem I envisage is that when you add 1.7 support to your app, you move your old migrations into south_migrations and start a clean migrations dir, as the instructions say - but what happens when your next release makes a database change? If you want to support all active versions (1.4, 1.6 and 1.7) you'd have to add a South migration and a 1.7 migration to support both groups of users - but then they no longer have a clean upgrade path from South to 1.7.<p>From reading the docs, it looks like 1.7 schema migrations may detect the changes have already been made and skip over them, but what will happen when you have data migrations too?<p>Does 1.7 figure out which operation you're up to by comparing your migrations to the database state, and starting migrations once the two match? What if at some point you return to an older set of model fields - does it match on the earliest or the latest?<p>I plan on avoiding the issue as long as possible: get my apps as feature complete as possible under South (with instructions for 1.7+ users for creating their own migrations), then bump the version when I switch from South to Django migrations. I'll then try to backport bugfixes to the South version (as long as they don't change the db) until support for Django 1.4 and 1.6 are dropped.</p>
]]></description><pubDate>Wed, 03 Sep 2014 07:42:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=8261906</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=8261906</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8261906</guid></item><item><title><![CDATA[New comment by radiac in "Wayland 3D Compositor with Oculus Rift and Razer Hydra [video]"]]></title><description><![CDATA[
<p>As you say, it's an interesting tech demo (which looks like it would be even more fun if you coupled it with a physics engine btw), but not particularly practical.<p>The way I could see it working though (without a significant change in OS UI) is by arranging your 2D desktop across multiple virtual 2D screens in 3D space, ie a bank of monitors angled towards you. You could use a conventional keyboard and mouse to navigate the 2D space (with perhaps mouse movement assisted or replaced by hand/head/eye tracking), and drag windows between screens, set programs to open on certain ones, with full screen clipping to screen edges - all basically as many OSes do already.<p>But because they're virtual, you could resize, split and merge screens, curve large ones, have ones which float in front of your vision to use for toolbar windows and HUDs. You could even use existing technology like VMs or VNC to use multiple OSes at the same time.<p>Mount your keyboard and mouse to a swivel chair which tilts, and you could comfortably have a 360 degree working area (assuming you can touch type) 4 or so screens deep, which would put traders' setups to shame (and at a fraction of the price). Throw in some panoramic backgrounds and you can move your office to a forest or a beach. Take it further you could even set up some sort of virtual office, being able to virtually get up from your desk and visit the workspaces of remote-working colleagues and friends to collaborate.<p>The exciting thing is that none of this is a massive leap from where we are now, and it would map pretty seamlessly to the software and UI we already use. The main thing holding it back would seem to be the resolution of 3D goggles, but with 4k rising, even that can't be too far off.</p>
]]></description><pubDate>Mon, 16 Jun 2014 10:03:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=7898163</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=7898163</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7898163</guid></item><item><title><![CDATA[New comment by radiac in "Misconceptions that IT professionals seem to have about CS education"]]></title><description><![CDATA[
<p>It may be of interest that the author actually has a degree in CS, as well as her postgraduate teacher training (I was at university with her). As you say, I think her point was that because she now works in education, she may not have kept up with the latest specific developments in the industry (new languages, libraries, tools etc), but she has a lot more knowledge about how to teach general CS skills to students, so that they are able to go out and learn modern specifics themselves (which of course will have changed significantly in the time they finish their education).<p>I think a lot of HN readers are missing the background to and context of this article though, which is that the author's talking about the UK secondary school system (11-18 year olds), which has been going through significant changes in the way computer science is taught.<p>When I learnt IT/CS at school, the correct answer to "How do you secure a computer" was "Make sure it isn't near the edge of a desk and there are no cables trailing across the floor" - answers involving passwords and firewalls were actually marked as incorrect. Formal education before university provided very little information which was actually relevant.<p>In the past year or so though, the government has changed the curriculum to be more practical and relevant. However, my understanding is that a lot of IT teachers didn't have a background in CS, so although they were happy at the level of tidying cables, they lacked the technical knowledge required to explain the new syllabus. That's insultingly simplified and generalised of course, but you get the idea.<p>Because the new syllabus was brought in in a rush following much political fanfare, questions were raised about how to bring these teachers up to speed in a short amount of time. I haven't followed the situation closely, but I believe that one solution which was pushed by government was that the industry should step in to save the day, despite the fact that they know sod all about teaching, and that their skill sets are often too topical and transient to be of any actual use to students. I don't want to put words into anyone's mouth, but I think that's a large part of what has led to this post, and re-reading the article in this context may shed a different light on it.</p>
]]></description><pubDate>Thu, 05 Jun 2014 22:13:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=7854952</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=7854952</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7854952</guid></item><item><title><![CDATA[New comment by radiac in "Pending Comments"]]></title><description><![CDATA[
<p>But that's part of the problem - comments will only show up if there are enough people looking at it to do the endorsing. A single site-wide list of pending comments won't work either - surely the whole point is that comments should be endorsed in the context of the thread?<p>It also runs the risk that things will only get endorsed if they agree with commonly-held views, and I'll also be interested to see how it effects things like whoishiring.<p>Some sort of moderation is fine, but I think that in its current implementation, this is a rather ham-fisted approach which will have a detrimental effect on HN.</p>
]]></description><pubDate>Sat, 22 Mar 2014 09:48:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=7448449</link><dc:creator>radiac</dc:creator><comments>https://news.ycombinator.com/item?id=7448449</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7448449</guid></item></channel></rss>