jOOQ is mainly known for its powerful type safe, embedded, dynamic SQL capabilities that are made available through code generation. However, a secondary use case of code generation is to use it for stored procedures (possibly exclusively for stored procedures). Stored procedures are powerful ways of moving complex data processing logic to the server. This … Continue reading The Best Way to Call Stored Procedures from Java: With jOOQ →
|
|
About fifteen years ago, Casey Treat spoke at our church about goal setting. He explained that a lot of people set a goal of reaching a certain weight and he said the problem with that occurs when you reach that weight.
|
|
About fifteen years ago, Casey Treat spoke at our church about goal setting. He explained that a lot of people set a goal of reaching a certain weight and he said the problem with that occurs when you reach that weight.
|
|
Most companies and projects are by far not big enough to benefit from microservices, and not good enough to deal with the implications and repercussions. There’s a reason “distributed systems” are hard: it’s the next difficulty level after multi-threaded concurrency — harder to observe, harder to reason about.
|
|
A buffer overflow attack is the exploitation of a buffer overflow vulnerability, typically by a malicious actor who wants to gain access or information. In this post, we’ll explain how a buffer overflow occurs and show you how to protect your C++ code from these attacks.
|
|
This article critiques the TIOBE Programming Community index and provides better ways to evaluate programming languages for projects and as a developer.
|
|
I had an interview for a Ruby developer position. As part of a live Rails coding session a class performing operations needed refactoring into supporting services. Let's say the logic in question is query = 'troglodytes troglodytes' response = URI . open( "https://xeno-canto.org/api/2/recordings?query=#{ CGI . escape(query) }" ) if response . status [ 0 ] == '200' body = JSON . load(re....
|
|
Added a few improvements to dwim-shell-command . Dired region In DWIM style, if you happen to have a dired region selected, use region files instead. There's no need to explicitly mark them. Clipboard (kill-ring) replacement Use <
|
|
This article critiques the TIOBE Programming Community index and provides better ways to evaluate programming languages for projects and as a developer.
|
|
I had an interview for a Ruby developer position. As part of a live Rails coding session a class performing operations needed refactoring into supporting services. Let's say the logic in question is query = 'troglodytes troglodytes' response = URI . open( "https://xeno-canto.org/api/2/recordings?query=#{ CGI . escape(query) }" ) if response . status [ 0 ] == '200' body = JSON . load(re....
|
|
Over the past years I attended hundreds of interviews. Many candidates proudly told tales on how they develop their projects with a microservice architecture. Often (I don’t want to say “always”, but from my memory I think it actually is “always”) it does not require many questions to see that they used a rocket launcher to kill a mouse. Microservices are hard . Everyone who experienced the pain of operating such an architecture can rela..
|
|
To celebrate Disability Pride Month, Snyk’s Director of Inclusion, Equity, and Diversity, Ashley Ladd (she/her), sat down with Alex Fallon (they/them) to discuss what Disability Pride means to them, how able-bodied people can be better allies and advocates for the Disabled community, inspirational figures, helpful resources, and so much more.
|
|
One of my favourite podcasts is Hanselminutes by Scott Hanselman. I have been listening to it probably longer than any other podcast. He recently interviewed Roberta Arcoverde from Stack Overflow. She talked about how the architecture of the Stack Overflow site is very different from most other large sites in that it is a self hosted monolithic application.
|
|
One of my favourite podcasts is Hanselminutes by Scott Hanselman. I have been listening to it probably longer than any other podcast. He recently interviewed Roberta Arcoverde from Stack Overflow. She talked about how the architecture of the Stack Overflow site is very different from most other large sites in that it is a self hosted monolithic application.
|
|
Pizza courtesy of Pizza for Ukraine! Donate Now to Pizza for Ukraine This blog post looks at testing rails apps with FactoryBot and MiniTest – the default test framework which ships with Rails. It does not use RSpec and RSpec is NOT required for use with FactoryBot. Note : I believe that MiniTest is the name of the standard rails testing framework. Oddly I've had issues confirming that so if I'm wrong please feel free to tell m....
|
|
I am happy and humbled to have been awarded the Microsoft MVP Award for the seventh consecutive year. July 1, the award assignation day, always comes with curiosity and a bit of trepidation. Being a member of the MVP community has been a very positive experience for me, especially in the years before COVID, when the MVP Summit, the main MVP event, was held in person in Seattle at the Microsoft HQ. That assembly of experienced developers f..
|
In the debate of work-life balance versus work-life integration it seems as though balance is winning out over passion as more and more people view life as the hours spent between clocking in and clocking out. Why is this viewpoint dominating and does it lead to a fulfilling life?
|
|
In the debate of work-life balance versus work-life integration it seems as though balance is winning out over passion as more and more people view life as the hours spent between clocking in and clocking out. Why is this viewpoint dominating and does it lead to a fulfilling life?
|
|
10 Gotchas for building a universal crypto candlestick iterator in Go
-
marianogappa.github.io
-
3 years ago
-
eng
My journey building a universal crypto candlestick iterator in Go, with tips for all the challenges you’ll face working with crypto exchanges’ APIs.
|
|
How to write a type checker/type inferrer with good error messages
-
lambdaland.org
-
3 years ago
-
eng
This is an experimental type checker/inferer for a simple lambda calculus. All the source for this may be found on my Codeberg repository .
|
|
A lot of ink is spent on the "monoliths vs. microservices" debate, but the real issue behind this debate is about whether distributed system architecture is worth the developer time and cost overheads. By thinking about the real operational considerations of our systems, we can get some insight into whether we actually need distributed systems for most things. We have all gotten so familiar with virtualization and abstractions between ou..
|
|
How to write a type checker/type inferrer with good error messages
-
lambdaland.org
-
3 years ago
-
eng
This is an experimental type checker/inferer for a simple lambda calculus. All the source for this may be found on my Codeberg repository .
|
|
Tomorrow is an announcement of EdgeDB 2.0, and I realized that I’ve never shared my experience with it, and it’s been more than a year since I switched every project I could to EdgeDB. So here is a short post on it. What is EdgeDB? It’s an open-source relational/graph database built on top of Postgres. Unlike many other databases, it doesn’t reinvent the underlying engine and uses battle-tested Postgres. But it reinvents everything else..
|
|
Tomorrow is an announcement of EdgeDB 2.0, and I realized that I’ve never shared my experience with it, and it’s been more than a year since I switched every project I could to EdgeDB. So here is a short post on it. What is EdgeDB? It’s an open-source relational/graph database built on top of Postgres. Unlike many other databases, it doesn’t reinvent the underlying engine and uses battle-tested Postgres. But it reinvents everything else..
|
|
Preprint announcement: 'Finite-sample bias-correction factors for the median absolute deviation based on the Harrell-Davis quantile estimator and its trimmed modification'
-
aakinshin.net
-
3 years ago
-
eng
This post announces the preprint on finite-sample bias-correction factors for MAD based on the Harrell-Davis quantile estimator. Pragmastat recommends Spread — the Shamos estimator — as a more efficient robust scale alternative that does not require bias correction. Confidence intervals are available via SpreadBounds . pragmastat.dev github.com/AndreyAkinshin/pragmastat I have just published a preprint of a paper ‘Finite-samp....
|
|
Preprint announcement: 'Finite-sample bias-correction factors for the median absolute deviation based on the Harrell-Davis quantile estimator and its trimmed modification'
-
aakinshin.net
-
3 years ago
-
eng
This post announces the preprint on finite-sample bias-correction factors for MAD based on the Harrell-Davis quantile estimator. Pragmastat recommends Spread — the Shamos estimator — as a more efficient robust scale alternative that does not require bias correction. Confidence intervals are available via SpreadBounds . pragmastat.dev github.com/AndreyAkinshin/pragmastat I have just published a preprint of a paper ‘Finite-samp....
|
|
I was banging my head against a wall trying to get help for go build with go build help (and for some reason go doesn’t support go build --help, but I kept getting this error: package help is not in GOROOT (/opt/homebrew/Cellar/go/1.18.3/libexec/src/help) Does brew not come with docs by default? How else am I supposed … Continue reading I’m so dumb
|
|
Adopting a new platform can seem intimidating, but with Snyk it doesn’t have to be. We have three tips to help you roll out Snyk, and have a seamless and successful first 30 days across your business or enterprise.
|
|
How finishing what you start makes teams more productive and predictable
-
lucasfcosta.com
-
3 years ago
-
eng
The aspect of “transaction cost” for doing a particular thing once or multiple times is interesting. Starting a bunch of things in parallel will often lead to many being finished at a similar point in time, often all at once and leading to the dreaded ‘big bang integration’, which even in short sprints may be painful enough already. That said, I love starting multiple things at once. Sometimes being ‘stuck’ on the same thing and not hav..
|
|
Build a distributed search index on top of which both large scale and niche search engines can run. Distributed search engines are not a new idea, but I believe my approach in terms of how you bring it to market will help solve the chicken and egg problem of getting enough usage for it to work.
|
|
This is a draft blog post, I would like to hear how I am wrong, so I can revise before sharing this more widely. Please email chris at c-mart dot in. We only have one spaceship, we are irreversibly damaging its life support system, but the sum of our actions can slow the damage a lot. I am not an expert on the climate, but I have a vaguely intuitive sense of thermodynamics and human incentives. When Peter Kalmus at NASA’s Jet Propulsio..
|
|
In 1986, a survey of approximate string matching algorithms found the algorithm used in the PLATO computer-aided instruction system was third place in quality (F1 score) and was an order of magnitude faster than the best performing algorithms. The PLATO algorithm used an unusual dimensional projection approach, while the competing algorithms of the day used edit distances or phonetics. However, this approach failed to catch on and the desig..
|