How Technical Debt Trumps Chief Culture Officers - Quandoo - Medium. I’ve got a shining example of how culture happens, at software development organizations, and one wouldn’t probably see this connection right away.
The thing is… it’s software itself, the code, that makes or breaks the company culture. I’m talking about technical debt, the term originally coined by Ward Cunningham many years ago. For most of the 21st century there has been a need to release fast. This need is rooted, generally, in all things marketing and sales. Agile as a methodology has a lot to do with this “release fast” imperative. First, the technical debt implies that there’s a certain group of know-it-all’s who do actually make sense of the mess in the code.
And, it’s upon contemplating this question that the guru know-it-all guy may turn into a cynic, because… the constraints beyond personal might not let them act.
What are our core values and practices for building software? This year, I’ve given a lot of thought to what has made being a developer at ThoughtWorks such an important part of my career and life.
Much of it’s about working with great people, who default to trust and honesty, with a common drive to make a better software industry. When it comes to our craft of building software, I recognize some fundamental software engineering values that we share — both at ThoughtWorks and in the wider community of empowered developers. Those core values and the core practices that support them are what I’ll explore in this article.
Values are statements of belief — that if these attributes are present, we’ll be able to build software that will not only delight users and customers, but will also allow for rapid change with confidence, both in the short and long term. I’ve chosen four core values to present here. Figure 1: Core values and practices Then there are eight core practices, each of which supports one or more of those core values. Core values. Random Acts of Optimization. Game developers working on a continuously evolving product like League of Legends are constantly battling against the forces of entropy as they add more and more content into unfortunately finite machines.
New content carries implicit cost—not just implementation cost but also memory and performance cost created by more textures, simulation, and processing. Riot Games Engineering. My name’s Cam Dunn, and I’m the Tech Director for League.
I’ve always found it interesting how much we don’t know about human history simply because no one made a record at the time. Who first invented the hammer? Hammers with handles have been around for tens of thousands of years, but nobody knows who made the first one for sure. Sometimes, history feels like we’re collectively waking up after a drunken night out and asking, “My god, what did we do last night?”
Riot came after the invention of language, but still we suffer from some of the same problems—during those first formative years, everything happened so quickly that sometimes we forgot to write it down or capture it clearly. Simon schreibt. Added a whole new book covering the pipeline in detailAdded 2 new videos and 32 new links to great articles, whitepapers, …Extended the section copying data from HDD to graphic card.Updated some terms in the pipeline animation and made clear that this is only the logical pipeline.Updated some smaller text passages in the book about the problems.Added some new problems.Added a new solutions and some general words.
See Render Hell 1.1 Change Log Added new possible problem-source about batching here.Added a note about the pipeline simplification here. Madsy9 pointed it out here.This article was honored with two reddit threads. Here and here.Added better FIFO explanation here. Thx sccrstud92, tmachineorg and koyimaCort mentioned this these slides about “How Shader Cores Work”.NVidia specifications with actual core counts. A lack of knowledge sometimes can be a strength, because you naively say to yourself “Pfff..how complicated can it be?” … and just started. Game Engine Architecture. Adam Weissmuller's Blog - Five Considerations for Creating an Optimal Online Gaming Infrastructure. The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.
The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company. The online, cloud-based gaming market has seen massive growth over the last five years, with the proliferation of social sites, gaming genres, mobile devices and high-speed broadband connections fueling the prediction that the market will reach $25.3 billion dollars this year, a compound annual growth rate of 13.9% since 2009. While game publishers tend to focus on the entertainment value and “stickiness” of a game, even the most popular and addictive titles can suffer significant player loss if the backend infrastructure can’t deliver the performance needed to provide an optimal online gaming experience. Making matters even more complex, game publishers must implement a high-performing backend infrastructure at a price that makes business sense.
Architecture. Tools Pipeline. Coding.