background preloader

Programming

Facebook Twitter

A successful Git branching model » nvie.com. Note of reflection (March 5, 2020)This model was conceived in 2010, now more than 10 years ago, and not very long after Git itself came into being.

A successful Git branching model » nvie.com

In those 10 years, git-flow (the branching model laid out in this article) has become hugely popular in many a software team to the point where people have started treating it like a standard of sorts — but unfortunately also as a dogma or panacea.During those 10 years, Git itself has taken the world by a storm, and the most popular type of software that is being developed with Git is shifting more towards web apps — at least in my filter bubble.

Web apps are typically continuously delivered, not rolled back, and you don't have to support multiple versions of the software running in the wild.This is not the class of software that I had in mind when I wrote the blog post 10 years ago. Why git? ¶ For a thorough discussion on the pros and cons of Git compared to centralized source code control systems, see the web. The main branches ¶ develop. The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) By Joel Spolsky Wednesday, October 08, 2003 Ever wonder about that mysterious Content-Type tag?

The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)

You know, the one you're supposed to put in HTML and you never quite know what it should be? C++ FAQ. 10 Resources for Design-Challenged Programmers. When it comes to design, why do programmers tend to have difficulty in creating a simple and user-friendly user interface?

10 Resources for Design-Challenged Programmers

Perhaps because programmers are traditionally left-brained and more focused on logic, analytics, objectivity, etc. This type of thinking is encouraged in academics. Memory Management Reference: Frequently Asked Questions. This is a list of questions that represent the problems people often have with memory management.

Memory Management Reference: Frequently Asked Questions

Some answers appear below, with links to helpful supporting material, such as the glossary, the bibliography, and external sites. For a full explanation of any terms used, see the glossary. C-specific questions C++-specific questions Common objections to garbage collection Miscellaneous C-specific questions. 100 Vim commands every programmer should know. Want to Write a Compiler? Just Read These Two Papers. Imagine you don't know anything about programming, and you want learn how to do it.

Want to Write a Compiler? Just Read These Two Papers.

You take a look at Amazon.com, and there's a highly recommended set of books by Knute or something with a promising title, The Art of Computer Programming, so you buy them. Now imagine that it's more than just a poor choice, but that all the books on programming are at written at that level. That's the situation with books about writing compilers. It's not that they're bad books, they're just too broadly scoped, and the authors present so much information that it's hard to know where to begin. Some books are better than others, but there are still the thick chapters about converting regular expressions into executable state machines and different types of grammars and so on. Not surprisingly, the opaqueness of these books has led to the myth that compilers are hard to write. DeWiTTERS Game Loop – Koonsolo Games. The game loop is the heartbeat of every game, no game can run without it.

deWiTTERS Game Loop – Koonsolo Games

But unfortunately for every new game programmer, there aren’t any good articles on the internet who provide the proper information on this topic. But fear not, because you have just stumbled upon the one and only article that gives the game loop the attention it deserves. Thanks to my job as a game programmer, I come into contact with a lot of code for small mobile games. And it always amazes me how many game loop implementations are out there. You might wonder yourself how a simple thing like that can be written in different ways. (Thanks to Kao Cardoso Félix this article is also available in Brazilian Portuguese, and thanks to Damian/MORT in Polish) The Game Loop Every game consists of a sequence of getting user input, updating the game state, handling AI, playing music and sound effects, and displaying the game.

Bool game_is_running = true; while( game_is_running ) { update_game(); display_game(); } Blocks. Perl 101 - Regexes. Regular expressions are too huge of a topic to introduce here, but make sure that you understand these concepts.

Perl 101 - Regexes

For tutorials, see perlrequick or perlretut. For the definitive documentation, see perlre. Matches and replacements return a quantity. The m// and s/// operators return the number of matches or replacements they made, respectively. You can either use the number directly, or check it for truth. if ( $str =~ /Diggle|Shelley/ ) { print "We found Pete or Steve! If ( my $n = ($str =~ s/this/that/g) ) { print qq{Replaced $n occurrence(s) of "this"\n}; } Becoming A Real Programmer (thinking about thinking...) [ LUPG Home ] [ Tutorials ] [ Related Material ] [ Essays ] [ Project Ideas ] [ Send Comments ] v1.0.0 Table Of Contents.

Becoming A Real Programmer (thinking about thinking...)

C, C++ Programming Tutorials. Welcome!

C, C++ Programming Tutorials

Vi-table. How to report a bug. It's Probably Our Fault Some users are timid about submitting bugs.

How to report a bug

They might think that they "did" something to the program to cause it to misbehave.