How I Got to the App Store Top With a Simple Currency App
Written by Valentin Shamardin
I will tell you how I’ve created quite an ordinary and not at all innovative application that has become objectively the best of its kind and even has been at the very top of the top for some time. It’s not a success story and not a guide for action. I just want to tell you how I developed the...
Clojure. Transducers, Reducers and Other Stuff
Written by Andrei Zhlobich
Transducers have become quite popular recently. It’s a new feature of the non-released Clojure 1.7. As of writing this, Сlojure 1.7-alpha5 version is the latest development release, but there also appeared a fair number of ports of transducers for such languages as Python , Ruby , JavaScript , PHP , Java , C++ , Lua , Erlang . To tell the truth, it’s a bit disconcerting, the library of reducers was added long ago (in Clojure 1.5). But no one said anything about them; nothing was ported, though they seem to be performing similar things. Or not? Let’s find out what these reducers & transducers are made for (do we really need them?), how they work and how we can use them… Finally, we will decide whether it’s time to throw reducers away. It would be wrong to describe concepts emerged in Clojure outside the context of the givenWhy Pay-per-Word Just Doesn’t Work for Tech Blogging
Written by Rockin'Robin
Tech blogging is on the rise though most of startups see it as a secondary thing. They’re totally right but there’s one condition to it — it requires skill as well as time. A lot of companies are comfortable with solving this problem by outsourcing content creation and hiring agencies or...
Lock-Free Data Structures. The Evolution of a Stack
Written by Max Khiszinsky
In the previous articles I described the basis, on which lock-free data structures and basic algorithms of the lifetime management of elements of lock-free data structures are built. Actually, it was a prelude to the description of lock-free containers. But then I faced a problem of how to build the story. Describing the known algorithms would be quite boring, as there would be a lot of [pseudo-]code, plenty of details that are important but quite specific. After all, you can always find them in the references I provide in articles. What I wanted was to tell you an interesting story about exciting things. I wanted to show the development of approaches to designing concurrent containers. Then the method of presentation should be the following: take some container type – a queue, map, hash map – and make a review of the currently known original algorithms for this container type.Quantum Search Using Grover’s Algorithm
Written by Roman V. Dushkin
Following the first quantum algorithms we have already reviewed ( Deutsch’s algorithm and the Deutsch-Jozsa algorithm — it's better to read these articles first, otherwise all the things mentioned here will be quite vague), let’s analyze Grover’s algorithm for the unstructured quantum search. An American mathematician Lov Grover formulated the algorithm in 1996 (it was long after the model of quantum computations had become popular). The algorithm uses a feature of quantum interference in order to solve an extremely demanding task of searching the value of some parameter, at which a defined function returns certain results. The given algorithm does not show the exponential advantage of the task in contrast to the classical computational model, but the advantage (quadratic) is quite essential for big values. However, it’s a general algorithm for solving quite a generalized problem. It has been proved that we cannot get a better result within theA Short Course in Computer Graphics. How to Write a Simple OpenGL. Article 1 of 6
Written by Dmitry Sokolov
Describing the Task In this series of articles, I want to show the way OpenGL works by writing its clone (a much simplified one). Surprisingly enough, I often meet people who cannot overcome the initial hurdle of learning OpenGL / DirectX. Thus, I have prepared a short series of six lectures, after which my students show quite good renderers. So, the task is formulated as follows: Using no third-party libraries (especially graphic ones), get something like this picture: Warning you, that it is training material that will generally repeat the structure of the OpenGL library. It will be a software renderer. I do not want to show how to write applications for OpenGL . I want to show how OpenGL is built. I am deeply convinced that it is impossible to write efficient applications using 3D libraries without understanding this. I will try to make the final code notUSB Killer
Written by Dark Purple
It was a usual gloomy winter morning. My colleagues and I were drinking our morning coffee, sharing the news and there were no signs of trouble. But then a friend told about… (a quote from a chat in Skype): I read an article about how a dude in the subway fished out a USB flash drive from the outer pocket of some guy’s bag. The USB drive had “128” written on it. He came home, inserted it into his laptop and burnt half of it down. He wrote “129” on the USB drive and now has it in the outer pocket of his bag… A Picture to Attract Attention: Since I work in the company engaged in the development and manufacture of electronics, my colleagues and I are began to discuss options for creating a USB flash drive, that «would burn half a laptop down.» We had plenty ofSecrets of the Conditional (ternary) Operator
Written by Alex Kulikov
Every self-respecting C/C++ programmer knows what the ternary operator is, and most everyone used it at least once in their programs. But do you know all the secrets of the ternary operator? What potential dangers are associated with its use and what features, seemingly not related to its direct purpose, it has? This article gives you the opportunity to test your knowledge and maybe learn something new. Let's start with a small test. Test Will the following code compile? Explain why. 1. int i; int j; (false ? i: j) = 45; 2. int i; int j; (true ? i: j) = 45; 3. short i; int j; (true ? i: j) = 45; 4. return true ? 0 : 1; 5. true ? return 0 : return 1; 6. What will be the output of the following piece of code? Why? std::cout << (false ? 9 : '9')A Short Course in Computer Graphics. How to Write a Simple OpenGL. Article 2 of 6
Written by Dmitry Sokolov
Hi, everyone. It’s me. It’s a model of my head rendered in the program we will create in the next hour or two. Last time we drew the wire mesh of a three-dimensional model. This time, we will fill polygons, or rather triangles, as OpenGL triangles almost any polygon, so there's no need to consider a complex case. Reminding you, that this series of articles is designed for your own programming. The time that I provide here is not for reading my code. It’s time for writing your code from scratch. My code is provided here just to compare your (working) code with mine. Any comments and questions are welcome. If you’re following this tutorial and writing your own code, upload it to github.com/code.google.com and other similar websites and provide links in comments. This can help you (other people will give advice), as well as other readers. Drawing aUndefined Behavior and Fermat’s Last Theorem
Written by Tyomitch
In accordance with the C and C++ standards, if the program leads to an integer overflow or any other “undefined behavior” (UB), the result of the program performance can be anything: it can post obscenities to Twitter or format your disk… Unfortunately, “Easter eggs” that would make the program...
or