<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Volodymyr Obrizan: personal website - 24</title><link href="https://obrizan.com/" rel="alternate"></link><link href="https://obrizan.com/feeds/24.atom.xml" rel="self"></link><id>https://obrizan.com/</id><updated>2026-10-24T00:00:00+03:00</updated><entry><title>Professional user</title><link href="https://obrizan.com/blog/professional-user/" rel="alternate"></link><published>2026-10-24T00:00:00+03:00</published><updated>2026-10-24T00:00:00+03:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2026-10-24:/blog/professional-user/</id><summary type="html">&lt;p&gt;There’s a familiar role on a team: tester, test engineer, software quality assurance — someone who tests an application professionally.&lt;/p&gt;
&lt;p&gt;But it would be cool to have a professional user: not a professional tester, but someone who uses the product professionally. For example, if a company is building an ecommerce …&lt;/p&gt;</summary><content type="html">&lt;p&gt;There’s a familiar role on a team: tester, test engineer, software quality assurance — someone who tests an application professionally.&lt;/p&gt;
&lt;p&gt;But it would be cool to have a professional user: not a professional tester, but someone who uses the product professionally. For example, if a company is building an ecommerce platform, the team would include someone who sells products on that marketplace and someone who buys there. They could work part-time or join for individual sessions. They wouldn’t need to write test plans — just use the product. Their responsibility would be to provide feedback and report user experience problems.&lt;/p&gt;
&lt;p&gt;This is somewhat like beta testers, but as I see it:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;beta testers are invited too late;&lt;/li&gt;
&lt;li&gt;they usually aren’t employees or contractors of the organization developing the product, so they have no obligation to report anything at all.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A job as an in-house user could be well protected against the threat of AI and agents. People in the industry still say testers are unnecessary because an agent will replace them. But a business owner would have to be out of their mind to say, “Users are unnecessary.”&lt;/p&gt;
&lt;p&gt;Does your organization have a professional user role? Have you heard of anything like this?&lt;/p&gt;</content><category term="24"></category></entry><entry><title>Rubin Won</title><link href="https://obrizan.com/blog/rubin-won/" rel="alternate"></link><published>2016-12-24T23:24:00+02:00</published><updated>2016-12-24T23:24:00+02:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2016-12-24:/blog/rubin-won/</id><summary type="html">&lt;p&gt;Previously on: on December 15, in the election for rector of KhNURE, 499 voters (50.2%) voted for Semenets, and 354 (35.6%) for Rubin. On December 19, the Ministry of Education and Science dismisses Rubin from the post of rector of KhNURE. On December 20, the Ministry of Education …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Previously on: on December 15, in the election for rector of KhNURE, 499 voters (50.2%) voted for Semenets, and 354 (35.6%) for Rubin. On December 19, the Ministry of Education and Science dismisses Rubin from the post of rector of KhNURE. On December 20, the Ministry of Education and Science appoints Semenets to the post of rector of KhNURE.&lt;/p&gt;
&lt;p&gt;Who Semenets is, I don’t know. In 16 years of my life at the university, I saw him once. I went in to Bondarenko’s office to get some document signed, but he wasn’t there, and instead of the office on the left they sent me to the office on the right. I’d heard something somewhere that his doctoral dissertation was cool. Personally, I know nothing about any developed and successfully implemented programs for developing our university. Although Semenets was a vice-rector of KhNURE for 17 (seventeen) years. Semenets himself doesn’t publish this (there’s nothing in the bio on the site), and the 499 people who know something about Semenets are silent as partisans. &lt;/p&gt;
&lt;p&gt;Who Rubin is, I didn’t know before he arrived in December of ’15. Over his year in office, I personally spoke with the rector several times. All of Rubin’s programs were in plain sight, the results were published. &lt;/p&gt;
&lt;p&gt;Bottom line:&lt;/p&gt;
&lt;p&gt;Semenets — 17 years a vice-rector, a man of the system — support from 499 voters.&lt;br&gt;
Rubin — 1 year rector, an outsider — support from 354 voters. &lt;/p&gt;
&lt;p&gt;I consider this a big victory for Rubin. If you disagree with me, try coming into someone else’s team and winning over at least one person. And Rubin and his team spent this year spinning like tops. &lt;/p&gt;
&lt;p&gt;KhNURE lost. Semenets’s program is kindergarten stuff. See http://nure.ua/wp-content/uploads/биография-и-первоочередные-задачи1.pdf For everything good, against everything bad. "Order must be brought to the system of control over the educational process." Well, it’s not like what we needed was for him to start creating disorder. And there are four pages of that kind of clusterfuck. &lt;/p&gt;
&lt;p&gt;What the motivation and reasoning of those 499 people is, I don’t understand. I’d wish them luck, except they don’t know what to do with it.&lt;/p&gt;</content><category term="24"></category></entry><entry><title>Programmer ≠ Businessman</title><link href="https://obrizan.com/blog/programmer-businessman/" rel="alternate"></link><published>2016-06-24T11:10:00+03:00</published><updated>2016-06-24T11:10:00+03:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2016-06-24:/blog/programmer-businessman/</id><summary type="html">&lt;p&gt;Here’s the very first program I ever wrote in my life:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;10 PRINT &amp;quot;Vova&amp;quot;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;The second program already asked what my name was, then asked for my year of birth, and then printed on the screen:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Privet, Vova! Tebe 8 let.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;I retyped both of these programs from a …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Here’s the very first program I ever wrote in my life:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;10 PRINT &amp;quot;Vova&amp;quot;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;The second program already asked what my name was, then asked for my year of birth, and then printed on the screen:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;Privet, Vova! Tebe 8 let.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;I retyped both of these programs from a children’s textbook. &lt;/p&gt;
&lt;p&gt;Once the principle became clear — that you can write absolutely anything on a computer — the third program was no longer from a book. It was from my head. Ever since then, different app ideas have constantly been coming into my head. Some ideas died in my head, some died in a special little notebook, and some ideas drag out their miserable existence as apps published in the App Store. &lt;/p&gt;
&lt;p&gt;I don’t know a single programmer who doesn’t understand the boundlessness of their capabilities, and who hasn’t had some app ideas come into their head. Some even find the time and patience to write an app and put it in the App Store. &lt;/p&gt;
&lt;p&gt;But then why don’t we see tens of thousands of successful programmers around us who have built a business on this? Because programmer ≠ businessman. One of the differences can be illustrated with the following dialogue:&lt;/p&gt;
&lt;p&gt;— Vova, look, I made a cool app. &lt;br&gt;
— Mm, cool, yeah, useful. But this bit here is done awkwardly; it needs to be like this and this.&lt;br&gt;
— Nah, you don’t get it! It’s a feature! That’s how it’s supposed to be!&lt;br&gt;
— Well, I don’t know, I didn’t understand how it worked on the first try, and I’m constantly suffering when I tap the wrong place on the screen...&lt;br&gt;
— That’s how it’s supposed to be; in the UITableViewDelegate delegate method, when the argument value is nonzero...&lt;br&gt;
— Hey, what difference do the parameters make? It’s still inconvenient to use...&lt;br&gt;
— GO FUCK YOURSELF YOU ASSHOLE YOU DON’T UNDERSTAND ANYTHING ABOUT PROGRAMMING!!!1&lt;/p&gt;
&lt;p&gt;For programmers, showing off their programming knowledge is like rich kids bragging about a new expensive phone or expensive boutique clothes. I.e., what I meant to say is that it’s the only way to stand out in some way, to hide their inferiority complex. &lt;/p&gt;
&lt;p&gt;When programmers shove their ego deeper down and start listening carefully to their users, that’s when entrepreneurial happiness will come to them.&lt;/p&gt;</content><category term="24"></category></entry><entry><title>Phone Scammers</title><link href="https://obrizan.com/blog/phone-scammers/" rel="alternate"></link><published>2016-02-24T11:51:00+02:00</published><updated>2016-02-24T11:51:00+02:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2016-02-24:/blog/phone-scammers/</id><summary type="html">&lt;p&gt;This morning a young man called me from +380 95 746-21-82. The young man introduced himself as an employee of the National Bank of Ukraine. He even gave me his first and last name, his position, and some reference number. Then he said:&lt;/p&gt;
&lt;p&gt;— For your identification, we need to know …&lt;/p&gt;</summary><content type="html">&lt;p&gt;This morning a young man called me from +380 95 746-21-82. The young man introduced himself as an employee of the National Bank of Ukraine. He even gave me his first and last name, his position, and some reference number. Then he said:&lt;/p&gt;
&lt;p&gt;— For your identification, we need to know your credit card number. Which bank do you associate your credit card with?&lt;br&gt;
— Excuse me?&lt;br&gt;
— Which bank do you associate your credit card with?&lt;br&gt;
— Young man, is Russian definitely your native language? What does it mean to “associate a credit card”?&lt;br&gt;
— Well, which bank associated your credit card: Oschadbank, FUIB, Prominvestbank?&lt;br&gt;
— What the hell are you talking about? Prominvestbank closed ages ago.&lt;/p&gt;
&lt;p&gt;After that the young man took offense and hung up. The cold call didn’t work. &lt;/p&gt;
&lt;p&gt;Don’t tell anyone any details of your credit cards over the phone. In some cases, just the 16 digits and the card’s expiration date are enough to steal money. If some call like this worries you, that there might be some trouble with your card, then just call back using the phone number printed on the back of the card.&lt;/p&gt;
&lt;p&gt;And yes, I know Prominvestbank hasn’t closed. You need to say any old nonsense to a fraudster to break the pattern of their script.&lt;/p&gt;</content><category term="24"></category></entry><entry><title>Sam Newman’s Book "Building Microservices"</title><link href="https://obrizan.com/blog/sam-newmans-book-building-microservices/" rel="alternate"></link><published>2016-01-24T07:00:00+02:00</published><updated>2016-01-24T07:00:00+02:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2016-01-24:/blog/sam-newmans-book-building-microservices/</id><summary type="html">&lt;p&gt;I recently read Sam Newman’s book "Building Microservices: Designing Fine-Grained Systems." &lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/images/livejournal/2016/01/24/kniga-building-microservices-sema-nyumena/27527-original-95207575fbf3b709.png"&gt;&lt;/p&gt;
&lt;p&gt;After reading this book, phrases kept spinning in my head: "paradigm shift," "disrupt," "the next big thing." Most of you are on the other side of the browser and have little interest in the development of internet technologies …&lt;/p&gt;</summary><content type="html">&lt;p&gt;I recently read Sam Newman’s book "Building Microservices: Designing Fine-Grained Systems." &lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/images/livejournal/2016/01/24/kniga-building-microservices-sema-nyumena/27527-original-95207575fbf3b709.png"&gt;&lt;/p&gt;
&lt;p&gt;After reading this book, phrases kept spinning in my head: "paradigm shift," "disrupt," "the next big thing." Most of you are on the other side of the browser and have little interest in the development of internet technologies. And they are changing a lot. So much that in 10 years the only thing that has stayed the same is the HTTP protocol, while everything else has changed: web servers, databases, web application architectures, testing, integration, and deployment methods. &lt;/p&gt;
&lt;p&gt;Microservice architecture is an organization of a system where each subsystem is an autonomous, independent web service responsible for one small task. The complete opposite is monolithic architecture, where there is only one web service that handles all tasks.&lt;/p&gt;
&lt;p&gt;In a microservice architecture, each microservice is developed, deployed, and scaled in isolation from other services. This means the chosen technology stack is no longer a life sentence. For example, the LAMP stack — Linux, Apache, MySQL, PHP — was popular for ten years. Previously, all these technologies were installed as part of a single web service. And if a new feature needed to be developed, they would look for a specialist who knew these technologies. But in a microservice architecture, one microservice can be implemented in Ruby, another in Go, a third in Java. One can have MongoDB as its database, another GraphDB, and a third a blob store, for example. And that’s normal. Choose the language and database that will solve the specific task most effectively.&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/images/livejournal/2016/01/24/kniga-building-microservices-sema-nyumena/27844-original-81cc5f7f2cd4014d.png"&gt;&lt;/p&gt;
&lt;p&gt;Previously, if a web service couldn’t handle the load, you would do horizontal scaling: launch another instance of the LAMP service and set up load balancing. In a microservice architecture, you can analyze the performance of each individual microservice and scale only the microservice that isn’t coping with the load. &lt;/p&gt;
&lt;p&gt;Reading the book, I remembered where I, as a user, had encountered microservices. I remember once going to Facebook: the news feed was there, but I couldn’t view private messages. That means Facebook has at least two microservices (in reality, hundreds of them) — the news feed microservice and the private messages microservice. And that day the messages microservice went down. The advantage is that the other microservices kept working, because they operate autonomously. In a monolithic architecture, that is impossible: the failure of one subsystem leads to the failure of the entire system. &lt;/p&gt;
&lt;p&gt;I strongly recommend "Building Microservices" to all CTOs and just plain developers.&lt;/p&gt;</content><category term="24"></category></entry><entry><title>Pic Related</title><link href="https://obrizan.com/blog/pic-related/" rel="alternate"></link><published>2014-03-24T11:18:00+02:00</published><updated>2014-03-24T11:18:00+02:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2014-03-24:/blog/pic-related/</id><summary type="html">&lt;p&gt;Pic related (from “pic related,” “picture related”) is an image inserted into a text that has an indirect relation to the meaning. &lt;/p&gt;
&lt;p&gt;Pic-related images are the cancerous tumor of the internet and a sign of the text author’s lack of professionalism. &lt;/p&gt;
&lt;p&gt;Pic-related images appeared when the internet got shitted …&lt;/p&gt;</summary><content type="html">&lt;p&gt;Pic related (from “pic related,” “picture related”) is an image inserted into a text that has an indirect relation to the meaning. &lt;/p&gt;
&lt;p&gt;Pic-related images are the cancerous tumor of the internet and a sign of the text author’s lack of professionalism. &lt;/p&gt;
&lt;p&gt;Pic-related images appeared when the internet got shitted up with shit and the shit had to fight for its place in the sun among the rest of the shit. In this case, pic-related images are used merely as a tool for attracting the attention of the spoiled reader. &lt;/p&gt;
&lt;p&gt;Another reason pic-related images appeared is bad website design. The designer, skipping along the road paved with good intentions, inserted a spot for an illustration into the site layout. After all, it’s obvious that any text is perceived better if it is sensibly illustrated. On the other hand, the site editor needs to stick something into the gaping hole. If the editor has no illustrations for the piece, he takes the first pic-related image he finds on the first page of Google. &lt;/p&gt;
&lt;p&gt;Using pic-related images is bad form. Nevertheless, they are often used not only in personal or group blogs, but also in news services, the overwhelming majority of which have no staff or freelance photojournalists of their own. &lt;/p&gt;
&lt;p&gt;A situation arises in which some report may be illustrated with a photograph that has an indirect relation to the event being described. Usually, such mistakes are very easy to spot: the weather was clear at the moment of the event, while the photograph is overcast. Or buildings are visible in the background that do not exist in the city where the described events are taking place. &lt;/p&gt;
&lt;p&gt;Here pic-related images do the news site a disservice, because by refuting the illustration’s direct relation to the event, the report as a whole is also called into question or refuted, which of course is not logical, but an unpleasant aftertaste may remain for the reader. Such photographs are often inserted deliberately for propaganda purposes. Western news agencies are the permanent Olympic champions in this sport. &lt;/p&gt;
&lt;p&gt;The author or editor of a report must make the effort to select or create illustrations that have a direct relation to the content. If there are no such illustrations, then absolutely nothing else may be included in the text. A good text will be read by its reader in any case. And this note is proof of that.&lt;/p&gt;</content><category term="24"></category></entry><entry><title>Meet the Computer!</title><link href="https://obrizan.com/blog/meet-the-computer/" rel="alternate"></link><published>2014-01-24T02:32:00+02:00</published><updated>2014-01-24T02:32:00+02:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2014-01-24:/blog/meet-the-computer/</id><summary type="html">&lt;p&gt;And yet, sometimes you really can find a diamond in the mud!&lt;/p&gt;
&lt;p&gt;Usually there’s no reason to linger in the long tunnel at Proletarska metro station. This time, as I was walking past a book stall spread out on the dirty floor, among a multitude of colorful covers my …&lt;/p&gt;</summary><content type="html">&lt;p&gt;And yet, sometimes you really can find a diamond in the mud!&lt;/p&gt;
&lt;p&gt;Usually there’s no reason to linger in the long tunnel at Proletarska metro station. This time, as I was walking past a book stall spread out on the dirty floor, among a multitude of colorful covers my eye caught on one single book. I couldn’t believe my eyes.&lt;/p&gt;
&lt;p&gt;“How much is it?”&lt;br&gt;
“30 hryvnias,” the hustler smiled.&lt;br&gt;
“I’ll take it. Do you have the other two volumes?”&lt;br&gt;
“No, they’ve already been taken.”&lt;/p&gt;
&lt;p&gt;What different attitudes two different people can have: one was foisting wastepaper on a sucker, while the other was buying a Stradivarius violin for the price of plywood. &lt;/p&gt;
&lt;p&gt;Meet the most sensible book on computing technology: Meet the Computer.&lt;/p&gt;
&lt;p&gt;&lt;img alt="IMG_2516" src="https://obrizan.com/images/livejournal/2014/01/24/znakomtes-kompyuter/1676-original-3c982de686ed2e40.jpg"&gt;&lt;/p&gt;
&lt;p&gt;People periodically ask me for advice: “I want to become a programmer. What book would you recommend?” Sure, you can recommend Stroustrup, but a beginner is unlikely to read past the introduction. And never mind beginners — plenty of “seniors” haven’t read Stroustrup either. So before taking on a programming language, you need to understand what a computer is, how it works, and what the prerequisites for its creation were. And this book is exactly about that.&lt;/p&gt;
&lt;p&gt;I read this book several times in early childhood, then several times when I was school age, then several times when I was a student, then once in grad school, and now I’ve started rereading it for the eleventh time. And what do you think? Every time I find something new! For example, I was able to read and understand a sample program in Smalltalk, which is the mother of Objective-C, which I learned over the last three years. &lt;/p&gt;
&lt;p&gt;In the early nineties, not everyone had ordinary cameras, and from this book I had already learned how a digital one was built:&lt;/p&gt;
&lt;p&gt;&lt;img alt="IMG_2517" src="https://obrizan.com/images/livejournal/2014/01/24/znakomtes-kompyuter/1810-original-ae65ae4a50097ca5.jpg"&gt;&lt;/p&gt;
&lt;p&gt;Where else would I have seen a detailed description of every step of photolithography — the process of making transistors?&lt;/p&gt;
&lt;p&gt;&lt;img alt="IMG_2518" src="https://obrizan.com/images/livejournal/2014/01/24/znakomtes-kompyuter/2198-original-f51828e27005bf7c.jpg"&gt;&lt;/p&gt;
&lt;p&gt;And it also had chapters on Boolean algebra, binary encoding, the structure of a compact disc, the “smart home,” three-dimensional graphics, and so on. From this book I learned who John von Neumann, Bill Gates, and Steve Jobs were. When at school the teacher asked, “What is the first programmer’s name?”, I answered without hesitation, “Ada Lovelace,” and I was right. In eleventh grade I gave my classmates lectures on computer organization and checked all the programming tests for all the parallel classes. And all of this thanks to a book that today was valued at 30 hryvnias — the cost of one glass of that piss alcoholics usually drink on a Friday evening. &lt;/p&gt;
&lt;p&gt;If it so happened that I were allowed to read only one book in my life, I would choose Meet the Computer.&lt;/p&gt;</content><category term="24"></category></entry><entry><title>On the Design of Charts</title><link href="https://obrizan.com/blog/on-the-design-of-charts/" rel="alternate"></link><published>2012-11-24T22:27:00+02:00</published><updated>2012-11-24T22:27:00+02:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2012-11-24:/blog/on-the-design-of-charts/</id><summary type="html">&lt;p&gt;I recently noticed a chart in the Google Analytics software.&lt;/p&gt;
&lt;p&gt;&lt;img alt="График" src="https://obrizan.com/images/blogger/2012/11/24/o-dizaine-grafikov/screen-shot-2012-11-24-at-21-23-17.png"&gt;&lt;/p&gt;
&lt;p&gt;Here we see a comparison of two metrics: the blue line shows the number of visits (Visits), and the light-blue one shows the number of unique visitors (Unique Visitors). Take another look at the chart and answer the question: which …&lt;/p&gt;</summary><content type="html">&lt;p&gt;I recently noticed a chart in the Google Analytics software.&lt;/p&gt;
&lt;p&gt;&lt;img alt="График" src="https://obrizan.com/images/blogger/2012/11/24/o-dizaine-grafikov/screen-shot-2012-11-24-at-21-23-17.png"&gt;&lt;/p&gt;
&lt;p&gt;Here we see a comparison of two metrics: the blue line shows the number of visits (Visits), and the light-blue one shows the number of unique visitors (Unique Visitors). Take another look at the chart and answer the question: which is greater, visits or unique visitors? It may seem that the correct answer is "unique visitors," but that answer is wrong. First, it’s illogical, because there are always fewer users than visits. Second, if we move the mouse over the chart lines, it shows us a tooltip:&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/images/blogger/2012/11/24/o-dizaine-grafikov/screen-shot-2012-11-24-at-21-45-34.png"&gt;&lt;/p&gt;
&lt;p&gt;It turns out these two graphs are shown at different scales. One for visits, the other for users. And in fact there are more visits than unique visitors.&lt;/p&gt;
&lt;p&gt;Since childhood, we’ve been used to the idea that in the Cartesian coordinate system, the higher a point is, the greater its absolute value. But apparently, in the U.S., children are taught somehow differently in school. The children grow up, become programmers, and make charts like this.&lt;/p&gt;</content><category term="24"></category><category term="Google"></category><category term="design"></category><category term="error"></category><category term="screenshot"></category></entry><entry><title>Act like a loser</title><link href="https://obrizan.com/blog/act-like-a-loser/" rel="alternate"></link><published>2011-09-24T20:03:00+03:00</published><updated>2011-09-24T20:03:00+03:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2011-09-24:/blog/act-like-a-loser/</id><summary type="html">&lt;p&gt;I checked into a holiday resort. A nice holiday resort — bathroom in the room, no need to go to another floor or stand in line for the bathhouse. I went to take a shower. Turned the tap toward the red mark. Barely warm water came out. Well, I thought — it …&lt;/p&gt;</summary><content type="html">&lt;p&gt;I checked into a holiday resort. A nice holiday resort — bathroom in the room, no need to go to another floor or stand in line for the bathhouse. I went to take a shower. Turned the tap toward the red mark. Barely warm water came out. Well, I thought — it’s a holiday resort, what can you expect? No hot water, fine. After the washing-up I thought: might as well pour some nice cold water over myself for a bit of hardening. I turn the tap toward the blue mark — hot water comes out.&lt;/p&gt;
&lt;p&gt;This happens to me once every eight years. In 2003 I checked into a student dorm at Riga Technical University. Back then, after turning the red tap and finding no hot water, I thought that in European universities students weren’t entitled to hot water. A cute student prank: the red and blue taps had simply been swapped.&lt;/p&gt;</content><category term="24"></category><category term="loser"></category></entry><entry><title>Reading Kharkiv News</title><link href="https://obrizan.com/blog/reading-kharkiv-news/" rel="alternate"></link><published>2010-11-24T22:48:00+02:00</published><updated>2010-11-24T22:48:00+02:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2010-11-24:/blog/reading-kharkiv-news/</id><summary type="html">&lt;p&gt;Let’s talk about Kharkiv news. But not about events in our glorious city—about Internet news services. Since I rarely get to watch &lt;strike&gt;TV&lt;/strike&gt; the window into Hell, I subscribed to several online news feeds. Let’s go through each of them.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://www.objectiv.tv/"&gt;Media Group “Objective”&lt;/a&gt;
 The quality of the …&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;</summary><content type="html">&lt;p&gt;Let’s talk about Kharkiv news. But not about events in our glorious city—about Internet news services. Since I rarely get to watch &lt;strike&gt;TV&lt;/strike&gt; the window into Hell, I subscribed to several online news feeds. Let’s go through each of them.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://www.objectiv.tv/"&gt;Media Group “Objective”&lt;/a&gt;
 The quality of the news is lights-out bad. Some stories are written by journalists right from the office, from scraps of some phrases on the Internet. They don’t have the ability to go out for every story, so for many news items they just stick in pic-relateds from a photo bank. But reading the comments is a treat. Especially when an ultra-radical straight-A schoolkid bursts into the thread and starts correcting the women journalists’ spelling, punctuation, stylistic, and factual errors for them. Also, they usually don’t write on Saturdays and Sundays. So on Monday you can easily get a three-day-old story from them. One of the significant drawbacks is that they cut the story off in the feed. So if you want to read it to the end, you have to click and go to the site. The headlines have a tabloid whiff. Sometimes you can’t tell what it’s about.
 Posts per week: 279. Subscribers: 180.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://www.mediaport.ua"&gt;MediaPort News Agency&lt;/a&gt;
 The quality of the news is normal. Though we did once write about a funny case where the agency &lt;a href="https://obrizan.com/blog/sports-news/"&gt;twisted the facts all sideways&lt;/a&gt; while describing one of Metalist’s games. There are comments on the news, but they’re somewhere deep in the bowels of the forum, so usually nobody reads them. Sometimes news items slip through in the feed with the phrase at the end: “Advertorial.” In principle that’s OK; it can be useful. “Mediaport” also cuts off the body of the story.
 Posts per week: 141. Subscribers: 12.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://vecherniy.kharkov.ua/"&gt;Newspaper “Evening Kharkiv”&lt;/a&gt;
 I subscribed to this channel recently. I haven’t really formed an opinion yet. Sometimes what slips through isn’t news, just lawyers’ consultations in the style of “How to sue your neighbor for his plot of land.” There are few comments on the news. So they’re not as interesting as the comments on “Objective.” The news in the feed is cut off.
 Posts per week: 292. Subscribers: 55.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://kharkivoda.gov.ua/"&gt;Kharkiv Regional State Administration&lt;/a&gt;
 A primary source of news. An excellent site for getting news. First, the news items in the feed come in full. Second, many stories are supplied with a quality photo shoot. Also, on this site the feed sends advance notices about various official events in Kharkiv. There are, of course, no comments on the news at all. It’s surprising that such a solid site has so few subscribers. The official mouthpiece of Mykhailo Markovych Dobkin.
 Number of posts per week: 117. Subscribers: 4.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://www.city.kharkov.ua/"&gt;Kharkiv City Council&lt;/a&gt;
 A primary source of news. An excellent site for getting news. Just like in the regional council’s feed, the news items come in full. Also, some stories are accompanied by quality photo shoots. The similarity in how the city council’s and regional council’s news is organized is obvious, but it says the sites were made by different companies. Again, the site has an undeservedly small number of subscribers. The official mouthpiece of Hennadiy Adolfovych Kernes.
 Posts per week: 76. Subscribers: 16.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href="http://atn.kharkov.ua"&gt;Television Agency “News”&lt;/a&gt;
 I added this news source only today; I haven’t formed an opinion. The news in the feed is chopped up. There are comments on the site. You can write anonymously.
 Posts per week: 256. Subscribers: 86.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I’d also read UNIAN through a feed by the “Kharkiv” tag, but I didn’t find such a feed on their site.&lt;/p&gt;
&lt;p&gt;I use Google Reader because it sucks in and stores all the news on its end, not just the last 20 like desktop readers do. Obviously, a lot more news than that can pile up in a day, and a desktop reader will miss something. But Google remembers everything. It also caches the bodies of news items. So if someone publishes kompromat somewhere and the ruling party confiscates the server, I’ll still be able to read it all from Google’s cache. Another mega-feature is full-text search through the news over a long time span. It finds prehistoric facts very easily. This is what the feeds look like in this reader’s tree:&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/images/blogger/2010/11/24/chitaya-harkovskie-novosti/chitaya-harkovskie-novosti-01.png"&gt;&lt;/p&gt;
&lt;p&gt;By default, I browse the list of news from old to new. This is what the consolidated flow of information looks like in Google Reader:&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/images/blogger/2010/11/24/chitaya-harkovskie-novosti/chitaya-harkovskie-novosti-02.png"&gt;&lt;/p&gt;
&lt;p&gt;It comes out to about 1,160 posts a week. That is, 165 per day. Clearly, in our little city all the news sources write about the same thing. So news items repeat in the feed. Usually I don’t read them in full; I read only the headlines. If it’s interesting, I expand the body and look at another couple of sentences. I do this for roughly every tenth story. And only select postings are granted the honor of being read by me right on the site. Going through the news takes me 20 to 30 minutes a day.&lt;/p&gt;
&lt;p&gt;Strictly speaking, I’m much less interested in the next Maidan in Kyiv than in our mayor planting trees somewhere in Saltivka. So I’m not subscribed to any nationwide Ukrainian or world news. If a nuclear power plant blows up somewhere nearby, I’ll learn about it from the panicking crowd in the street. As for events on a smaller scale, nobody cares.&lt;/p&gt;
&lt;p&gt;What I really lack is a news feed for the Rohan residential district and a feed for the university where I work. After all, it’s always more interesting to read about what’s happening around the corner than about events somewhere in someone else’s city, let alone on another continent.&lt;/p&gt;
&lt;p&gt;Bloggers, what news do you read? What can you recommend? Maybe there’s some blogger who does photo reports about Kharkiv? Who should I be reading? And if you’re not from Kharkiv, then just share how you’ve organized reading your favorite news.&lt;/p&gt;</content><category term="24"></category><category term="Kharkiv"></category><category term="interesting"></category><category term="opinion poll"></category><category term="news"></category><category term="screenshot"></category></entry><entry><title>Marketing Merchandising</title><link href="https://obrizan.com/blog/marketing-merchandising/" rel="alternate"></link><published>2010-10-24T12:14:00+03:00</published><updated>2010-10-24T12:14:00+03:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2010-10-24:/blog/marketing-merchandising/</id><summary type="html">&lt;p&gt;The other day I walk into the Klass supermarket on Zubarev St. and see this:&lt;/p&gt;
&lt;p&gt;&lt;img alt="pivo" src="https://obrizan.com/images/blogger/2010/10/24/marketingovyi-merchandaizing/pivo-2.jpg"&gt;&lt;/p&gt;
&lt;p&gt;Buying six bottles of beer at once in a pack is a good deal for those drunks who can’t multiply 2.99 by six in their heads. Though maybe by “good deal” they mean …&lt;/p&gt;</summary><content type="html">&lt;p&gt;The other day I walk into the Klass supermarket on Zubarev St. and see this:&lt;/p&gt;
&lt;p&gt;&lt;img alt="pivo" src="https://obrizan.com/images/blogger/2010/10/24/marketingovyi-merchandaizing/pivo-2.jpg"&gt;&lt;/p&gt;
&lt;p&gt;Buying six bottles of beer at once in a pack is a good deal for those drunks who can’t multiply 2.99 by six in their heads. Though maybe by “good deal” they mean “not having to make two trips”?&lt;/p&gt;
&lt;p&gt;And for those who still don’t find it funny, here’s a bonus track. Car number six hundred sixty-six. The tram runs on route No. 23 in Kharkiv. Instead of money, in this car you have to pay for the ride with your soul. If you have one.&lt;/p&gt;
&lt;p&gt;&lt;img alt="666" src="https://obrizan.com/images/blogger/2010/10/24/marketingovyi-merchandaizing/666-2.jpg"&gt;&lt;/p&gt;</content><category term="24"></category><category term="Kharkiv"></category><category term="fun"></category><category term="photos"></category></entry><entry><title>Arrival and Leaving Again</title><link href="https://obrizan.com/blog/arrival-and-leaving-again/" rel="alternate"></link><published>2010-09-24T17:35:00+03:00</published><updated>2010-09-24T17:35:00+03:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2010-09-24:/blog/arrival-and-leaving-again/</id><content type="html">&lt;p&gt;Saint Petersburg is beautiful.&lt;/p&gt;
&lt;p&gt;&lt;img alt="piter_zastavka" src="https://obrizan.com/images/blogger/2010/09/24/priezd-i-snova-otezd/piter-zastavka-22.jpg"&gt;&lt;/p&gt;
&lt;p&gt;I’d gladly tell you about what a wonderful time I had in Piter and Moscow. But right now I’m leaving for Yevpatoria. So you’ll have to wait until next week.&lt;/p&gt;</content><category term="24"></category><category term="travel"></category><category term="photos"></category></entry><entry><title>Looking for a student for a master’s and PhD program in South Korea</title><link href="https://obrizan.com/blog/looking-for-a-student-for-a-masters-and-phd-program-in-south-korea/" rel="alternate"></link><published>2009-08-24T18:35:00+03:00</published><updated>2009-08-24T18:35:00+03:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2009-08-24:/blog/looking-for-a-student-for-a-masters-and-phd-program-in-south-korea/</id><summary type="html">&lt;p&gt;My friend Roma Hwang writes from distant Korea and sends everyone his regards. He also asked me to help find a bachelor’s student who’s ready to go to South Korea for a few years (that’s the one with Seoul, Samsung, StarCraft, esports, not the one with the …&lt;/p&gt;</summary><content type="html">&lt;p&gt;My friend Roma Hwang writes from distant Korea and sends everyone his regards. He also asked me to help find a bachelor’s student who’s ready to go to South Korea for a few years (that’s the one with Seoul, Samsung, StarCraft, esports, not the one with the big nuclear missile) to complete a master’s and PhD program. Tuition and living expenses are covered by the host side. This letter from Roma can be considered an invitation:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Hi again.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I recently spoke with a professor from the Electronics Department at my university. He wants to invite a smart Ukrainian student to study with him (Master + PhD). Here is some information about the professor.&lt;/p&gt;
&lt;p&gt;Soung Hyon (Name) Nam (Surname) Studied in America. Speaks English well. Research Area: — Speech / Audio Processing — Separation, Enchancement, Recognition (of Speech) — Multi-channel / Single-channel&lt;/p&gt;
&lt;p&gt;Requirements for the student: — Matlab (Basics), C — Signal Processing background (Fourier Transformation, Convolution, Linear Time invariant systems) — Interest in Signals &amp;amp; System. — English — A desire to complete both a master’s AND a PhD in Korea (AND is capitalized for a reason).&lt;/p&gt;
&lt;p&gt;Housing (living expenses + dormitory) and tuition are covered. If everything goes through successfully, the student will be able to start studying as early as next spring. The university admissions procedure starts in October.&lt;/p&gt;
&lt;p&gt;If you have questions, email me.&lt;/p&gt;
&lt;p&gt;Sincerely, Roman Hwang.&lt;/p&gt;
&lt;p&gt;Roma Hwang’s email: &lt;a href="mailto:hwang.roman@gmail.com"&gt;hwang.roman@gmail.com&lt;/a&gt;. Feel free to email him personally, or post on our &lt;a href="http://groups.google.com/group/apvt/browse_thread/thread/fe00f49217d558f3"&gt;bulletin board&lt;/a&gt;. Forward/repost/retweet this to anyone it may be useful to.&lt;/p&gt;</content><category term="24"></category><category term="friends"></category><category term="search"></category></entry><entry><title>Simple Static Work Distribution in a Multithreaded Program</title><link href="https://obrizan.com/blog/simple-static-work-distribution-in-a-multithreaded-program/" rel="alternate"></link><published>2009-04-24T22:45:00+03:00</published><updated>2009-04-24T22:45:00+03:00</updated><author><name>Volodymyr Obrizan</name></author><id>tag:obrizan.com,2009-04-24:/blog/simple-static-work-distribution-in-a-multithreaded-program/</id><summary type="html">&lt;p&gt;With this article we are starting a series of publications, “Parallel Programming for the Little Ones.” The project’s expected audience: schoolchildren, as well as students who are beginning to study parallel programming.&lt;/p&gt;
&lt;p&gt;The advantage of a multithreaded application over a sequential one is that several threads do the same …&lt;/p&gt;</summary><content type="html">&lt;p&gt;With this article we are starting a series of publications, “Parallel Programming for the Little Ones.” The project’s expected audience: schoolchildren, as well as students who are beginning to study parallel programming.&lt;/p&gt;
&lt;p&gt;The advantage of a multithreaded application over a sequential one is that several threads do the same amount of work several times faster. In a particular case, a unit of work can be one loop iteration. Students make a typical mistake in parallel programming: they create several threads, each of which does the same amount of work as the sequential program. This does not lead to the desired speedup, and sometimes even slows the application down. A very simple rule applies here: each thread in a parallel application must do N times less work than the sequential program, where N is the number of threads launched.&lt;/p&gt;
&lt;p&gt;Let’s consider a simple method of statically dividing the iterations of a one-dimensional loop among several threads. The figure shows a simple loop consisting of 10 iterations. The iteration space is described by the interval [0; 10). In a sequential program, the initial value of the iteration counter is zero, the loop increment is one, i.e., the loop body is executed for every iteration.&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/blog/01/01.PNG"&gt;&lt;/p&gt;
&lt;p&gt;As stated above, launching two or more threads that would execute the very same code shown in the figure is a mistake. In this case, the amount of work for one thread will remain the same, while for the whole program it will grow several times over. The work—the loop iterations—must be divided among the threads. The figure below schematically shows static round-robin distribution for two threads.&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/blog/01/02.PNG"&gt;&lt;/p&gt;
&lt;p&gt;It is easy to see that thread number 0 starts its work with the zero iteration and executes only the even iterations (the increment is 2): 0, 2, 4, 6, 8, while thread number 1 starts with iteration 1 and does the odd ones: 1, 3, 5, 7, 9. Thus, each thread does half as much work as the sequential program. The theoretical speedup is equal to two. Let’s consider a variant where the work is divided among three threads (see the figure below).&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/blog/01/03.PNG"&gt;&lt;/p&gt;
&lt;p&gt;Here thread number 0 also starts with the zero iteration, but processes every third iteration: 0, 3, 6, 9. Thread number 1 starts with iteration 1, and thread number two starts with iteration 2. For all threads, the loop counter increment is equal to three. The theoretical speedup is equal to 3. In this specific case, load balance is disrupted and the actual speedup is 10/4 = 2.5. It should be noted that as the number of iterations grows, the imbalance will be leveled out and will approach the theoretical speedup.&lt;/p&gt;
&lt;p&gt;One can observe the pattern that each thread starts by executing the iteration whose number matches the thread number, and the increment is equal to the number of threads. Thus, we can write the general case for an arbitrary number of threads (see the figure below).&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/blog/01/04.PNG"&gt;&lt;/p&gt;
&lt;p&gt;The advantages of static round-robin iteration distribution are: a) simplicity of software implementation; b) no overhead for iteration scheduling; c) good load balance with a large number of iterations and the same loop-body execution time for different iterations. The drawback of the approach is the lack of any ability to balance the load if the loop body takes different amounts of time for different iterations.&lt;/p&gt;
&lt;p&gt;This drawback was fixed in the OpenMP library. For static round-robin division of loop iterations, the directive shown in the figure below can be used.&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/blog/01/05.PNG"&gt;&lt;/p&gt;
&lt;p&gt;For poorly balanced amounts of work, when the loop body takes different amounts of time for different iterations, a dynamic load-balancing algorithm can be used.&lt;/p&gt;
&lt;p&gt;&lt;img alt="image" src="https://obrizan.com/blog/01/06.PNG"&gt;&lt;/p&gt;
&lt;p&gt;The drawbacks of OpenMP include a restriction on the type of the loop iteration variable. The OpenMP 2.5 library supports only signed int.&lt;/p&gt;</content><category term="24"></category><category term="programming"></category><category term="basics"></category></entry></feed>