README.txthttp://hernantz.github.io/- Mostly lies and rants in plain text.Tue, 24 Sep 2024 00:00:00 -0300Django UI components for perfectionists with deadlineshttp://hernantz.github.io/django-ui-components-for-perfectionists-with-deadlines.html<p>Server side rendering and UI components for a modern frontend.</p>hernantzTue, 24 Sep 2024 00:00:00 -0300tag:hernantz.github.io,2024-09-24:/django-ui-components-for-perfectionists-with-deadlines.htmlProgramminghtmxdjangocssarchitecturebest-practicespythonjavascriptChecksums matterhttp://hernantz.github.io/checksums-matter.html<p>When serving files over the internet, TCP and SSL are not enough.</p>hernantzFri, 30 Jun 2023 00:00:00 -0300tag:hernantz.github.io,2023-06-30:/checksums-matter.htmlProgrammingbest-practicesThe only bakery in townhttp://hernantz.github.io/the-only-bakery-in-town.html<p>A short story about a town, a bakery and monopolies.</p>hernantzFri, 10 Feb 2023 00:00:00 -0300tag:hernantz.github.io,2023-02-10:/the-only-bakery-in-town.htmlPoliticswritingseconomylibertarianismRead this after your next meetinghttp://hernantz.github.io/read-this-after-your-next-meeting.html<p>Changing the purpose of meetings in an async first environment.</p>hernantzThu, 05 Jan 2023 00:00:00 -0300tag:hernantz.github.io,2023-01-05:/read-this-after-your-next-meeting.htmlManagementbizopsideasInline form validation with Django and Htmxhttp://hernantz.github.io/inline-form-validation-with-django-and-htmx.html<p>Partial and progressive form validation without any Javascript.</p>hernantzMon, 13 Jun 2022 00:00:00 -0300tag:hernantz.github.io,2022-06-13:/inline-form-validation-with-django-and-htmx.htmlProgrammingpythondjangojavascripthtmxLet the code settlehttp://hernantz.github.io/let-the-code-settle.html<p>Gain confidence when deploying critical changes.</p>hernantzThu, 20 Jan 2022 00:00:00 -0300tag:hernantz.github.io,2022-01-20:/let-the-code-settle.htmlProgrammingbest-practicesDjangonauts don't let djangonauts write Javascripthttp://hernantz.github.io/djangonauts-dont-let-djangonauts-write-javascript.html<p>Why and how to fight JS fatigue with some Django and htmx.</p>hernantzMon, 25 Oct 2021 00:00:00 -0300tag:hernantz.github.io,2021-10-25:/djangonauts-dont-let-djangonauts-write-javascript.htmlProgrammingpythondjangojavascriptrantshtmxEndpoints matterhttp://hernantz.github.io/endpoints-matter.html<p>Entities can be identified by IDs, but also paths.</p>hernantzSat, 18 Sep 2021 00:00:00 -0300tag:hernantz.github.io,2021-09-18:/endpoints-matter.htmlProgrammingdatabaserestapiConcurrent updates on Firestore documentshttp://hernantz.github.io/concurrent-updates-on-firestore-documents.html<p>Can we achieve eventual consistency? Maybe something close to it?</p>hernantzMon, 16 Aug 2021 00:00:00 -0300tag:hernantz.github.io,2021-08-16:/concurrent-updates-on-firestore-documents.htmlProgrammingdatabasefirebasefirestoreReclaiming space from a big table in Postgreshttp://hernantz.github.io/reclaiming-space-from-a-big-table-in-postgres.html<p>After deleting columns or updating lots of rows.</p>hernantzSat, 08 May 2021 00:00:00 -0300tag:hernantz.github.io,2021-05-08:/reclaiming-space-from-a-big-table-in-postgres.htmlProgrammingdatabasepostgresNo-SQL databases are glorified cacheshttp://hernantz.github.io/no-sql-databases-are-glorified-caches.html<p>Thoughts on SQL vs No-SQL databases. When to use each.</p>hernantzMon, 26 Apr 2021 00:00:00 -0300tag:hernantz.github.io,2021-04-26:/no-sql-databases-are-glorified-caches.htmlProgrammingdatabasepostgressqlDe-normalize with Firestore sub-collections for fun and profithttp://hernantz.github.io/de-normalize-with-firestore-sub-collections-for-fun-and-profit.html<p>Can subcollections help denormalization be a not so terrible idea?</p>hernantzTue, 08 Dec 2020 00:00:00 -0300tag:hernantz.github.io,2020-12-08:/de-normalize-with-firestore-sub-collections-for-fun-and-profit.htmlProgrammingdatabasefirebasedenormalizationfirestoreConfiguration is an API, not an SDKhttp://hernantz.github.io/configuration-is-an-api-not-an-sdk.html<p>A configuration architecture for the working dev.</p>hernantzSat, 27 Jun 2020 00:00:00 -0300tag:hernantz.github.io,2020-06-27:/configuration-is-an-api-not-an-sdk.htmlProgrammingpythonbest-practicestoolsconfigurationarchitectureDeploying at 6am, a postmortemhttp://hernantz.github.io/deploying-at-6am-a-postmortem.html<p>Another chapter in the IT nightmare stories.</p>hernantzTue, 09 Jun 2020 00:00:00 -0300tag:hernantz.github.io,2020-06-09:/deploying-at-6am-a-postmortem.htmlProgrammingdevopspostgresqlSocialism works, but doesn't scalehttp://hernantz.github.io/socialism-works-but-doesnt-scale.html<p>Can libertarians and socialists agree on anything?</p>hernantzThu, 14 May 2020 00:00:00 -0300tag:hernantz.github.io,2020-05-14:/socialism-works-but-doesnt-scale.htmlPoliticslibertarianismDefault is not sethttp://hernantz.github.io/default-is-not-set.html<p>How can you tell if an optional parameter was set or not?</p>hernantzThu, 23 Apr 2020 00:00:00 -0300tag:hernantz.github.io,2020-04-23:/default-is-not-set.htmlProgrammingpythonChilde Roland to the Dark Tower camehttp://hernantz.github.io/childe-roland-to-the-dark-tower-came.html<p>My attempt to fixing the Dark Tower series.</p>hernantzFri, 27 Mar 2020 00:00:00 -0300tag:hernantz.github.io,2020-03-27:/childe-roland-to-the-dark-tower-came.htmlWritingsreviewsrantsfan-fictionPrivileged victimhoodhttp://hernantz.github.io/privileged-victimhood.html<p>The dangers of identity politics and state imposed privileges.</p>hernantzMon, 10 Feb 2020 00:00:00 -0300tag:hernantz.github.io,2020-02-10:/privileged-victimhood.htmlPoliticsrantsideaslibertarianismConfiguration-friendly appshttp://hernantz.github.io/configuration-friendly-apps.html<p>Some guidelines for config management in general and Python apps in particular.</p>hernantzFri, 11 May 2018 00:00:00 -0300tag:hernantz.github.io,2018-05-11:/configuration-friendly-apps.htmlProgrammingpythonbest-practicesconfigurationarchitecturetoolsIt's the competition, stupidhttp://hernantz.github.io/its-the-competition-stupid.html<p>Increasing your chances of prosperity.</p>hernantzWed, 07 Mar 2018 00:00:00 -0300tag:hernantz.github.io,2018-03-07:/its-the-competition-stupid.htmlPoliticsideaslibertarianismCalendaring events with Pythonhttp://hernantz.github.io/calendaring-events-with-python.html<p>Some gotchas you'll find when scheduling the next world's doomsday.</p>hernantzThu, 13 Apr 2017 00:00:00 -0300tag:hernantz.github.io,2017-04-13:/calendaring-events-with-python.htmlProgrammingpythontimezonesThe Backbone events waltzhttp://hernantz.github.io/the-backbone-events-waltz.html<p>Snippets that will show you that minimalist means versatile.</p>hernantzWed, 04 May 2016 00:00:00 -0300tag:hernantz.github.io,2016-05-04:/the-backbone-events-waltz.htmlProgrammingbackbonejavascriptbest-practicesDjango's signal to noisehttp://hernantz.github.io/djangos-signal-to-noise.html<p>Keeping a balance between decoupled and maintainable code.</p>hernantzFri, 29 Apr 2016 00:00:00 -0300tag:hernantz.github.io,2016-04-29:/djangos-signal-to-noise.htmlProgrammingdjangopythonbest-practicesThe sorry state of jQuery pluginshttp://hernantz.github.io/the-sorry-state-of-jquery-plugins.html<p>Customization is not enough, some plugins simply do too much.</p>hernantzThu, 31 Mar 2016 00:00:00 -0300tag:hernantz.github.io,2016-03-31:/the-sorry-state-of-jquery-plugins.htmlProgrammingbackbonejavascriptbootstrapjqueryThe branch is dead, short live the branch!http://hernantz.github.io/the-branch-is-dead-short-live-the-branch.html<p>Implement big changesets little by little. Don't let Theseus' ship sink!</p>hernantzFri, 28 Aug 2015 00:00:00 -0300tag:hernantz.github.io,2015-08-28:/the-branch-is-dead-short-live-the-branch.htmlProgrammingideasagilegitMock yourself, not your testshttp://hernantz.github.io/mock-yourself-not-your-tests.html<p>Every mock is a smell, avoid them as much as you can.</p>hernantzMon, 27 Jul 2015 00:00:00 -0300tag:hernantz.github.io,2015-07-27:/mock-yourself-not-your-tests.htmlProgrammingtestingpythonmocksrantsAir, the next big thinghttp://hernantz.github.io/air-the-next-big-thing.html<p>What is wrong with <em>some</em> startups today?</p>hernantzMon, 27 Apr 2015 00:00:00 -0300tag:hernantz.github.io,2015-04-27:/air-the-next-big-thing.htmlStartupsstartupsrantsHow to publish a pelican site on Githubhttp://hernantz.github.io/how-to-publish-a-pelican-site-on-github.html<p>Step by step guide on how to publish a pelican website on Github.</p>hernantzSun, 18 May 2014 00:00:00 -0300tag:hernantz.github.io,2014-05-18:/how-to-publish-a-pelican-site-on-github.htmlProgrammingpelicangitpythonAn MVP is not a product, it's an MVPhttp://hernantz.github.io/an-mvp-is-not-a-product-its-an-mvp.html<p>Build, measure and learn. But don't avoid best practices afterwards.</p>hernantzSat, 09 Nov 2013 00:00:00 -0300tag:hernantz.github.io,2013-11-09:/an-mvp-is-not-a-product-its-an-mvp.htmlStartupsrantsmvpOpen tabs buffer overflowhttp://hernantz.github.io/open-tabs-buffer-overflow.html<p>Ideas for surviving an open tabs buffer overflow.</p>hernantzWed, 21 Aug 2013 00:00:00 -0300tag:hernantz.github.io,2013-08-21:/open-tabs-buffer-overflow.htmlProductivityideasInithttp://hernantz.github.io/init.html<p>This is my new static blog.</p>hernantzWed, 03 Jul 2013 00:00:00 -0300tag:hernantz.github.io,2013-07-03:/init.htmlPersonalpelicanideas