Clojure is a dynamic, functional programming language that is a joy to write. I’ve been writing it professionally for the last year-and-a-half and wanted to share something I wish existed when I first got started.
This guide, therefore, is aimed at:
The motivation might…
My use-case of Monzo is a daily spending card to ring fence “fun money”. Its budgeting tools are good enough for simple uses like mine, and the design is aesthetically pleasing.
I signed up to its recent offering — Monzo Plus — because I thought I would make use of the virtual cards, the ability to view my other accounts in Monzo, and the custom categories.
That, mostly, didn’t turn out to be the case.
The virtual cards’ design and integration into the app was quite clunky, and there was no way to easily pull up the card numbers. …
If the executed test scripts emit TAP-formatted output to STDOUT, individual passes and failures are counted and displayed in the test run’s UI.
Heroku indicates that the individual tests are displayed on the UI if the output is TAP compliant.
They don’t mention what this UI looks like, or how to know if the output is correctly being accepted as valid TAP output to get the enhanced UI.
I’ve taken some screen grabs of the before and after to save you some commits.
If you’re trying to add a dependency to a Swift library, the
Package.swift file may have a
dependencies section that resembles the line below.
dependencies: ["FeedKit", “SQLite”]
At the time of writing, the above line fails with the error below because the product and library names are different.
dependency 'SQLite' in target ‘…’ requires explicit declaration; reference the package in the target dependency with '.product(name: "SQLite", package: "SQLite.swift")'
The error message doesn’t tell you where to add the
.product entry. After a bit of tinkering, I figured out how to get rid of this error message.
SQLite entry in the
dependencies array with the
.product declaration, e.g.
.product(name: "SQLite", package: "SQLite.swift")])
It now costs £699 to start developing applications for Apple’s ecosystem — assuming you have an existing keyboard, mouse, and monitor.
The new Apple Silicon Mac Mini, MacBook Air, and MacBook Pro are excellent development computers for beginners and veterans alike. Early indications from the community seem to indicate that the community’s RAM worries were mostly premature; 8GB of RAM is enough to get some serious work done.
My personal computer…
The United States of America — like it or not — is a huge influence on the world, particularly the Anglosphere. The nation and their people inspire many modern democracies. Ideas pioneered by the American entrepreneurial spirit have led to incredible progress.
America is a complicated country with a history filled with both despicable and heroic acts — its founding constitution stated that some human beings were worth three-fifths of others. The same country is also one of the most generous; a world leader in innovation, science, culture, and media.
I believe that Americans are good people on the whole…
Performance should be a first-class citizen of every modern application.
There are plenty of reasons to justify putting performance at the forefront of your application, and this blog post isn’t about that.
This post is meant to discuss a high-level concept that allows you to gain massive speed improvements and, depending on the platform that you’re using, relatively minimal engineering effort.
Lazy loading is a design pattern commonly used in computer programming to defer initialization of an object until the point at which it is needed.
In various areas of software engineering, lazy loading is an optimisation step…
I was particularly intrigued by the latter part of the promise which prompted me to dip my toe in the water. Fast forward to today, I can safely say that Elm has fulfilled the promise it made.
Thinking back to my journey learning Elm, the most difficult part of getting comfortable with writing it was forcing myself to think the Elm way. I find that there is an…
Most users of POSIX based systems have most likely heard of or use the
grep command regularly. For those who don’t know,
grep is a method of searching an input file for a match of one or more patterns. It’s a very useful and powerful tool, especially when you pair it with some advanced regular expressions.
One of the things I didn’t know until yesterday, and thought would be interesting to share, is that you can also use
grep on any
Ruby class that includes the
The output of
ri Enumerable#grep is as follows:
= Enumerable#grep(from ruby…
As Software Developers, we like to have the tools we use configured just the right way. This creates an issue, however, when you have to configure your development environment again in the future for any reason.
“Uurgh, what was that git alias for nice logs again?” and “why don’t I have docker installed on my machine?! I swear I had it installed” become your source of annoyance for the next week.
I love computers, design, and people. Lead Software Engineer at eporta.