In this article, we'll discuss how the git init command originated
and how it has changed each year for the past 16 years since Git's
inception in April 2005. Then we will examine snapshots from Git's
code every year from 2005 to 2021 to get a feel for how the git init
command and the object database have evolved, from a code
perspective, over the past 16 years.
The relationship between source code, computers, and people is
complex. Though most code exists to be run on a computer, its
purpose is not limited to that. It is also intended to be read and
understood. The complexity of modern software development stands in
opposition to the effort to understand code: Software that cannot be
understood cannot be easily maintained or improved, and many
empirical studies indicate a correlation between a given codebase's
complexity and its rate of defects. It's difficult to understand a
codebase of any significant size, and programmers therefore need and
deserve every useful tool and technique to help them understand
One such category of tool, static program analysis, consists of
programs or algorithms designed to extract facts from another
program's source code, without executing the program in question and
usually as a distinct stage in the day-to-day software development
process. Software developers who use tools for static program
analysis (usually referred to simply as static analysis) then have
an opportunity to use the facts yielded by the analysis to further
understand, evaluate, and modify the associated codebase.
This is a guide on setting up a static HTTPS website on your
raspberry pi using docker and nginx. The aim is to have this running
on the raspberry pi and to be able to access it from a host computer
on the same local network. You should already be able to ssh into
your pi from your host computer and have raspberry pi OS set up.
Just around the corner, a new feature is rearing its head and it's
getting frontend developers excited. That feature is CSS
layers. With layers, we'll finally be able to fully encapsulate
our CSS for import. That means modules, scripts, or anything else
imported into your projects can have CSS that is entirely separate
from your own, putting to bed the age old problem of styles
overriding each other. It will also let us be more agile with the
CSS we add to our pages with custom import statements.
Paddington, now happily settled with the Brown family and a popular
member of the local community, picks up a series of odd jobs to buy
the perfect present for his Aunt Lucy's 100th birthday, only for the
gift to be stolen.
In the evening we watched Paddington
2. I liked the movie and give
it a 7 out of 10.
ome terms: The Fast Fourier Transform is an algorithm optimization
of the DFT Discrete Fourier Transform. The “discrete” part just
means that it’s an adaptation of the Fourier Transform, a continuous
process for the analog world, to make it suitable for the sampled
digital world. Most of the discussion here addresses the Fourier
Transform and its adaptation to the DFT. When it’s time for you to
implement the transform in a program, you’ll use the FFT for
efficiency. The results of the FFT are the same as with the DFT; the
only difference is that the algorithm is optimized to remove
redundant calculations. In general, the FFT can make these
optimizations when the number of samples to be transformed is an
exact power of two, for which it can eliminate many unnecessary
The chimneys of industry rise over Adua and the world seethes with
new opportunities. But old scores run deep as ever. On the
blood-soaked borders of Angland, Leo dan Brock struggles to win fame
on the battlefield, and defeat the marauding armies of Stour
Nightfall. He hopes for help from the crown. But King Jezal's son,
the feckless Prince Orso, is a man who specializes in
disappointments. Savine dan Glokta -- socialite, investor, and
daughter of the most feared man in the Union -- plans to claw her
way to the top of the slag-heap of society by any means
necessary. But the slums boil over with a rage that all the money in
the world cannot control. The age of the machine dawns, but the age
of magic refuses to die. With the help of the mad hillwoman
Isern-i-Phail, Rikke struggles to control the blessing, or the
curse, of the Long Eye. Glimpsing the future is one thing, but with
the guiding hand of the First of the Magi still pulling the strings,
changing it will be quite another . . .
In the evening I started in A Little
The Age of Madness book 1 by Joe Abercrombie. I've read the First Law
trilogy and the three standalone novels—of which I liked Best Served
Cold the most—so I look forward to this new series.
As you know, Rust does not support optional function arguments nor
keyword arguments, nor function overloading. To overcome this
limitation rust developers frequently apply builder pattern. It
requires some extra coding, but from the API ergonomics perspective,
gives a similar effect as keyword arguments and optional arguments.
Sendable and @Sendable are part of the concurrency changes that
arrived in Swift 5.5 and address a challenging problem of type
checking values passed between structured concurrency constructs and
Since Python 3.5 was released in 2015 including PEP
484 and the typing
module type hints
have grown from a nice-to-have to an expectation for popular
packages. To fulfill this expectation our team has committed to
shipping type hints for the v2.0
we didn’t realize is the amount of value we’d derive from this
project in terms of code correctness.
We wanted to share the journey, what we learned, and problems we
encountered along the way as well as celebrate this enormous
milestone for the urllib3 project.
The setuptools team no longer wants to be in the business of providing a command line interface and is actively working to become just a library for building packages. What you should do instead depends on your use case, but if you want some basic rules of thumb, there is a table in the summary section.
This does not mean that setuptools itself is deprecated, or that
using setup.py to configure your package builds is going to be
removed. The only thing you must stop doing is directly executing
the setup.py file — instead delegate that to purpose-built or
standards-based tools, preferably those that work with any build
We all know and have at least once used the top(1) command to
track information about our cpu and processes, but how many of you
know what each field means? Today we will guide you through each of
these fields. By default, top(1) displays the ‘top’ processes on
each system and periodically updates this information every 2.0
seconds using the raw cpu use percentage to rank the processes in
is a dynamic program analysis that measures a running program’s time
and(or) memory consumption. The profiler can instrument the entire
running program or record samples for a fixed duration of time.
A raging wildfire. A massive blackout. A wealthy man shot to death
in his palatial hilltop home.
For Clay Edison, it’s all in a day’s work. As a deputy coroner,
caring for the dead, he speaks for those who cannot speak for
themselves. He prides himself on an unflinching commitment to the
truth. Even when it gets him into trouble.
Then, while working the murder scene, Clay is horrified to discover
a link to his brother, Luke. Horrified. But not surprised. Luke is
fresh out of prison and struggling to stay on the straight and
And now he’s gone AWOL.
The race is on for Clay to find him before anyone else
can. Confronted with Luke’s legacy of violence, Clay is forced to
reckon with his own suspicions, resentments, and loyalties. Is his
brother a killer? Or could he be the victim in all of this, too?
In the evening I started in The
a Clay Edison novel by Jonathan and Jesse Kellerman.