podcast
details
.com
Print
Share
Look for any podcast host, guest or anyone
Search
Showing episodes and shows of
Yegor Bugayenko
Shows
yegor256 podcast
F68: Наказания для Кодеров | ООП | MBA | Инфоцыгане | Zerocracy | Павка Корчагин
F68: Наказания для Кодеров | ООП | MBA | Инфоцыгане | Zerocracy | Павка Корчагин by Yegor Bugayenko
2025-05-31
1h 19
yegor256 podcast
F67: Java | Agil | CI/CD | MCP | зарплаты | софт скиллы | левые взгляды | справедливость
F67: Java | Agil | CI/CD | MCP | зарплаты | софт скиллы | левые взгляды | справедливость by Yegor Bugayenko
2025-05-25
1h 03
yegor256 podcast
F66: Децентрализация | Guy Ritchie | Aibolit | Ruby on Rails | Работа в Яндекс | Билл Гейтс
F66: Децентрализация | Guy Ritchie | Aibolit | Ruby on Rails | Работа в Яндекс | Билл Гейтс by Yegor Bugayenko
2025-05-16
1h 02
yegor256 podcast
И33: Вадим Петроченков | Как создается язык Rust
И33: Вадим Петроченков | Как создается язык Rust by Yegor Bugayenko
2025-05-12
51 min
yegor256 podcast
F59: Friday Q&A about programming and management
F59: Friday Q&A about programming and management by Yegor Bugayenko
2025-02-28
1h 02
yegor256 podcast
И27: И. В. Аржанцев | ФКН ВШЭ, ICPC, стартапы, студенты, аспирантура, JetBrains, Yandex, MIT
И27: И. В. Аржанцев | ФКН ВШЭ, ICPC, стартапы, студенты, аспирантура, JetBrains, Yandex, MIT by Yegor Bugayenko
2024-09-03
1h 15
yegor256 podcast
И26: В. А. Петров | математика, СПбГУ, R&D, наука в Китае, аспирантура не для всех
И26: В. А. Петров | математика, СПбГУ, R&D, наука в Китае, аспирантура не для всех by Yegor Bugayenko
2024-08-20
1h 02
yegor256 podcast
M129: Niche narrow-skilled developers will earn more than others
"Jacks of all trader" were appreciated and valued in the past when computers were young. Now the situation is different: you either are a niche specialist and you make good money, or you know everything and your income is below average. This situation will only get worse for those who don't want to dive deeper into a specific tech domain. The video is here: https://youtu.be/-WpBUrOxoDI
2020-09-21
05 min
yegor256 podcast
M128: Don't quit failing projects, quit those that fail you
I often hear programmers complaining about projects they work in: customers are not happy, the market doesn't like us, nobody wants our product, etc. They not only complain, but they also quit. This is ridiculous. You don't need your product to be successful, you need your project to give you everything you need to be successful, personally. And this includes freedom and open source. The video is here: https://youtu.be/wQwZPOzN2gI
2020-09-14
05 min
yegor256 podcast
M127: The ability to explain a problem so that it's understood is the most important soft skill
Most of us programmers are good at writing code, but very bad in reporting bugs so that other programmers understand what is wrong and help us resolve issues. This is a very important "soft" skill. You can train it in open source projects, where nobody will listen to you unless you explain yourself very clearly and professionally. Take some open source project and try to submit bugs to them. You will see the reaction. The video is here: https://youtu.be/Hrk_Jorc5z4
2020-09-10
04 min
yegor256 podcast
M126: Use open source projects to build yourself a support group
One of the most complex tasks while working in a team of software engineers is how to convince them that you are right and your technical decisions are correct. No matter how smart you are, you will have problems with this. In order to win in those fights, you need a support group: people who agree with you and will vote for your decisions. Open source projects may give you such a support group. The video is here: https://youtu.be/DA9pK_yNLtc
2020-09-07
04 min
yegor256 podcast
Выступление перед студентами ВШЭ
1-го сентября 2020 года мне повезло выступить перед 200+ студентами Факультета Компьютерных Наук (ФКН) Высшей Школы Экономики (ВШЭ) в Москве, по случаю начала нового учебного года. Видео здесь: https://youtu.be/Ly9u_ZAZFCk
2020-09-04
42 min
yegor256 podcast
M125: When you contribute to your project altruistically, you are killing it
You may think that being altruist and give your project and your team more than taking back is the right thing to do. It's not true. To the contrary, if you are being selfish and always make sure that the team is giving you back the same amount of value you are giving to it—you are doing the right thing and improving the management system in your company. The video is here: https://youtu.be/A59xGYb-aGY
2020-09-03
06 min
yegor256 podcast
M124: Put your talent away and learn new skills when working in an enterprise
Being a talented programmer, in my opinion, means having an innate intolerance to mess. It means a permanent desire to structure and organize the code you are working on. This may be a great advantage if you are in a small project or a startup. However, if you join an enterprise, this will be your disadvantage, which may only hurt you and the people around you. Instead, you will have to learn new skills and acquire new talent for yourself: the ability to put up with mess around you. The blog post about talent is here: https://www.yegor256.com/2019/12/31...
2020-08-31
06 min
yegor256 podcast
M123: One README should be enough for any open source project
Some of us believe that a good open source project (or some of them) must have extensive and big documentation, in multiple Wiki pages or Markdown files. I don't believe in this. I believe that any project must be able to fit its documentation into a single README. If you can't fit it all into it, you are doing something wrong. The video is here: https://youtu.be/Qxvk9z0tEP8
2020-08-27
05 min
yegor256 podcast
M122: Don't help them, instead use their free contribution to improve the product
When someone comes to your product and asks questions about how it works, why it doesn't work, or simply complains about its problems: don't help them right away. Instead, fix the product while they are waiting "on the line," show them a new version of it, and ask to provide feedback again. This is how you use them as free testers and make your product become better. The video is here: https://youtu.be/tI6rGQIevxU
2020-08-24
06 min
yegor256 podcast
M121: Don't be frustrated by the enterprise chaos around you, conquer it!
No matter what kind of enterprise you are working in, you won't like what's happening around you: chaos, lack of control, lack of logic, and so on. Don't expect them to improve. Instead, find a place for yourself and make changes there. Be the leader of the changes and earn yourself karma points. The video is here: https://youtu.be/SuAM9J2cTDo
2020-08-20
05 min
yegor256 podcast
M120: Don't wait for your manager to tell you what to do, do what you think is right (open source)
Most managers are incompetent, lazy, and stupid. If you expect them to tell you what to do, you will have a lot of frustration. Because they don't know and they don't want to know. The solution is simple: start planning everything yourself and show them your plans. In most cases, they will be happy to leave you alone and let you do what you want. If it will be open-source, you will have a double win. The video is here: https://youtu.be/CmUzNPqCF4s
2020-08-17
05 min
yegor256 podcast
M118: Deploy your ready-to-use open source artifacts into immutable repositories
Having a good source code repo in GitHub is not enough if you want your users to trust you and use your product. They expect you to deploy it somewhere where you can't delete it. Maven Central is a good example of such storage. If your binary artifacts are not there, your users will have serious concerns about whether to use your libraries or not. The video is here: https://youtu.be/iFx2-U8fsrE
2020-08-10
05 min
yegor256 podcast
M117: Breaking responsibility down is the responsibility of a manager/architect
When they say that we are working for a big goal and that's why we don't use fine-grained metrics, be aware: you are dealing with an incompetent manager or an architect. Their job is to decompose larger tasks into smaller pieces, instead of feeding us stories about "Big Goals". The video is here: https://youtu.be/kPTKT3jOG7c
2020-08-06
04 min
yegor256 podcast
M116: Which license to use for an open source product?
Do you still wonder what is the best license to use for your new open-source product? GPL, BSD, Apache? Stop thinking about this. It doesn't matter. Just use the most simple one: MIT. The video is here: https://youtu.be/vBOg8_nGDls
2020-08-03
05 min
yegor256 podcast
M115: Going along with large open source projects is a perfect strategy for newbies
There are three strategies to get into open source when you are just starting. They didn't work for me. There is the fourth one, which I would suggest you try. I didn't try it myself, but I'm sure it's much more effective than the first three. The video is here: https://youtu.be/IeoYXstRvzw
2020-07-30
06 min
yegor256 podcast
M114: The performance of programmers can be measured, with the right metrics
Most of us think that the programmers' performance can't be measured. We can't, they say, put a number on a person. I believe, we can and must. Just like any other job, software development has to be measured. The question is which metrics to use in order to do this objectively and effectively. In one of my recent blog posts, I suggested a number of metrics, which can be used individually or all together. Try to apply them for yourself and see what happens. This is the blog post about this: https://www.yegor256.com/2020/06/23/individual-performance-metrics.html The video is...
2020-07-27
05 min
yegor256 podcast
M112: Put as much as possible on GitHub, no matter what it is
GitHub is the place you should keep your code at, no matter how perfect or complete it is. Small scripts, short documentation pages, some notes, simple documents: they all may be there, they all may be interesting for your followers. Don't wait until you have a complete library to open source, start smaller. The video is here: https://youtu.be/xFXW5j2x7XI
2020-07-20
06 min
yegor256 podcast
M111: Use open source projects to beat the boresome of the office work
We all work with some legacy and boring code. In most cases we can't decide what to work with, since this is what the business is paying for. Making small open source projects may become a great solution to deal with the boresome of the legacy: make them on your own and be the architect there, and have fun! The video is here: https://youtu.be/qJxDV1TrEGE
2020-07-16
05 min
yegor256 podcast
M110: Professional developers enjoy being punished by static analyzers
A static analyzer is not a "nice" tool generating fancy statistics, which you can show to your boss and get back to work. A static analyzer is supposed to be a punisher for you for the mistakes you make. The video is here: https://youtu.be/7rtQ4yQVAK0
2020-07-13
03 min
yegor256 podcast
M109: Open your sources piece by piece, not all at once
If you have a good product to open source, don't do it in one go. Instead, take pieces out of it and open them slowly. This is how you buy your freedom from your organization and learn how to do open source, avoiding big mistakes. The video is here: https://youtu.be/VuJNBXPnRy8
2020-07-09
02 min
yegor256 podcast
M108: Your job is to prepare your open source project for the future community
Your main goal as a creator of an open-source project is to prepare it for the users and contributors who will come after you. You will not stay with your project forever. You may not even stay with is for a few years. You don't want the project to die, do you? Just make it look attractive for future users and it will live forever. The video is here: https://youtu.be/kV5j4Uysivo
2020-07-06
04 min
yegor256 podcast
M107: Make your GitHub project look attractive and contributors will come
The product you develop is very important. But the way you format and present your repository on GitHub is equally (or even more) important. This is how you attract contributors: by making your project look well-organized on GitHub. The video is here: https://youtu.be/elOkw1OYd_U
2020-07-02
04 min
yegor256 podcast
M106: Very soon all important software projects will open their sources
It is inevitable: open source is how we will be developing software in the future. Nobody will pay for software, but only for services around it. You have to join this new market as soon as possible. The video is here: https://youtu.be/JBdtSAJjFaU
2020-06-29
05 min
yegor256 podcast
M105: Open source developers inevitably have better soft and tech skills
Open source projects are the best places for training programmers and helping them grow their soft and tech skills. If you want to convince your management to allow you to work in an open-source, use this argument: your skills will only grow if your code is open. The video is here: https://youtu.be/D12gi1x6Cdw
2020-06-23
06 min
programmier.bar – der Podcast für App- und Webentwicklung
Folge 46 - Testing – ein Überblick
Software-Testing ist ein wesentlicher Bestandteil, wenn es um die Umsetzung eines Programmier-Projekts geht. Doch wie soll man den Durchblick behalten und wissen, was die richtige Methode für das eigene Vorhaben ist? Und wie wichtig ist Testing eigentlich?Bei der programmier.bar geht es munter weiter und wir geben euch in der ersten Folge des neuen Jahres einen Überblick zu verschiedenen Methoden des Software-Testings. Wir unterteilen hier in funktionale (Unit- und Device-Testing, Akzeptanz-, Integrations-, System- und Smoke Tests) sowie nicht-funktionale Tests (Last-, Performance-, A/B-, User- und Monkey-Tests, Apache Bench und eigene Herangehensweisen). Während wir von unseren Erf...
2020-01-10
1h 00
yegor256 podcast
Shift-M/42: self-development with Venkat Subramaniam
Venkat Subramaniam is a famous software expert, a regular speaker at software conferences, a book writer, and a software architect/programmer. He shares his views about self-development.
2019-12-10
1h 03
yegor256 podcast
M104: Refactoring without a ticket means stealing project resources
When you see the code that needs improvements you, as a good programmer, fix it because you don't want the bad quality to stay in your project. However, this good intent only harms the project. When you work in a team, you are not allowed to do what is not approved by the project. Every time you see an opportunity for refactoring, make a ticket and let the project decide when and who will do it. The video is here: https://youtu.be/PkmVF64mZNo
2019-11-11
00 min
yegor256 podcast
M102: Zerocracy may look like utopia for you now, but eventually you will be there
Very often, those who read about Zerocracy and watch my videos, ask me whether I believe that the management model we are promoting, is applicable to real projects. They sometimes call it utopian and unrealistic. I suggest you look at it as a picture of an ideal software world, which may become your world if you try to apply it to your work, piece by piece. Try harder! :) The video is here: https://youtu.be/cIq-pSFswUI
2019-07-12
06 min
yegor256 podcast
M100: Tech audits help you identify the gaps between your code base and industry standads
Independent technical reviews, which you may get in Zerocracy, won't help you find bugs in your software, this is what testers are for. They will help you understand how far your code base from the industry standards applicable to your tech stack. Most teams tend to do things in their own special way, which is a huge threat to maintainability. Don't wait until it's too late, start now. The video is here: https://youtu.be/jzMZaC54nbc
2019-07-08
08 min
yegor256 podcast
M98: If you think that your team is doing fine, you are a bad manager
Most CTOs and project managers I'm talking to believe that their teams "are doing fine" and don't need any audits. This means only one thing: they are incompetent managers. Professional managers know that "doing fine" now doesn't mean that the team doesn't have hidden and currently invisible defects, which will cost a lot, in the future. The job of a professional manager is to regularly identify problems, technical debt, risks, and threats. Zerocracy provides exactly this service, remotely. The video is here: https://youtu.be/GlBf5-g4nGk
2019-06-28
05 min
yegor256 podcast
M97: Let your followers be your best censors helping you think more logical
There are many reasons why people are being active in social networks, like Twitter, Instagram, Facebook, or Telegram channels. Some of them even have their own blogs or YouTube channels, like me. Some of them are having fun, but my primary objective of doing this and publishing my ideas online is that this activity helps me structure my thinking and make it more logical. I have thousands of censors constantly looking at what I'm saying and writing. You should do the same if you want to grow: start publishing your thoughts and see how many people follow you and read...
2019-06-26
05 min
yegor256 podcast
M96: Freelancers are a pain, but they are your only hope if you want the quality to go up
Most companies suffer from the legacy code they inherit from software teams that disband or programmers just quick. Companies have to do something with the software and they can't throw it away. Most of them hire full-timers to support the code, maintain, and hope that they will improve it. This won't happen. Full-timers are not interested in doing that and they won't. If you want your code base to become better you need people who are interested in going into conflict with the code base and the status quo. Freelancers are your only option. The full video is here: https...
2019-06-24
06 min
yegor256 podcast
M95: Only lazy and immature programmers are afraid of penalties and punishment
Very often I hear managers saying that if you even try to punish programmers for their mistakes they will quit and you will have no team. This may only happen to junior or lazy programmers. Professional software engineers are interested in being challenged and rewards+punishment is what constitutes a challenge. And the challenge is what motivates us, technical people, to work. The video is here: https://youtu.be/PlvoXBgwooY
2019-06-20
06 min
yegor256 podcast
M94: It is impossible to make a full-timer deliver results, unless they want it
Our bosses what us to be productive, effective, and deliver results. However, the question is whether they can make us do it or not. When they hire us as full-timers and pay us for a full month of our time in the office, they can't do anything to force us to work. They can only rely on our desire to be "good soldiers." For some people, this may work, but true professionals are always smarter than their bosses and know how to look busy while doing something else. This will never be the case with people who are paid by...
2019-06-20
06 min
yegor256 podcast
M93: To become a good programmer you have to find a project that rejects your mistakes
Junior programmers usually don't know where to start in order to practice, learn how to code, and work with professionals. They can't find the right project to contribute to. I'm suggesting you find a project, which is ready to reject your mistakes, no matter what. We have such projects, which are owned and managed by our best programmers, in Zerocracy. Join our Telegram chat and ask, there will be plenty of offers. The chat is here: https://t.me/zerocracy The video is here: https://youtu.be/dCn53X1I2R0
2019-06-17
05 min
yegor256 podcast
M92: We in Zerocracy use Boost Factor to help architect motivate programmers
Sometimes we have tasks in our projects, which nobody wants to complete. They are difficult or impossible to decompose, or simply too complex. What do we do in order to motivate our programmers to work with those tasks? We use Boost Factor, which is a multiplier of a micro budget. In other words, we use money in order to motivate programmers. We believe that professional programmers are motivated by money and know how to demand more when more work is required. The video is here: https://youtu.be/nvXu_Yl5Y_w
2019-06-12
05 min
yegor256 podcast
M91: Full-timers want to look smart, freelancers want to deliver results
Most full-timers are afraid of showing their bosses that they find help at StackOverflow, because their managers expect them to be smart and know everything about the technologies they work with. Who would want to pay a full monthly salary to someone who constantly seeks help at StackOverflow, right? This is not the case with freelancers, on the other hand. Those who are paid by result are not required to be smart. They need to be productive and effective contributors. Who do you want to be? The video is here: https://youtu.be/_4pk5GNUySg
2019-06-11
04 min
yegor256 podcast
M89: Deliver your trust continuously, not discrete
Most companies and managers believe that they have to check people before they let them get into the team, through a number of very complex interviews. After that, they trust their programmers and hope they will be motivated and committed enough to deliver the best results. Agile also suggests the same. I strongly disagree. We must not deliver our trust only once when we hire someone. We must continuously inform programmers about their performance and trust them as much as they deliver, every day. The video is here: https://youtu.be/KPbKqTXfZwA
2019-05-31
05 min
yegor256 podcast
M90: RUP is a framework, Agile is a philosophy; just like Zerocracy and XDSD
I often hear a question: what is better, Agile or RUP? This question doesn't make a lot of sense since Rational Unified Process (RUP) is a framework with a large set of artifacts, processes, roles, and procedures; while Agile is a short list of philosophical points. I would actually strongly recommend you study RUP to understand software development (or even get certified). XDSD is our philosophy and Zerocracy is a framework.
2019-05-31
07 min
yegor256 podcast
M88: If you are working on a prototype for longer than two weeks, you are doing it wrong
Technical debt is a huge problem, when it is, well ... huge. What usually happens is this: we start a project, we work on its "prototype," we wait until it is fully ready, and then we start thinking about unit tests, continuous integration, and build automation. But it is too late because the product already is too big. The problem is that we hold the product in the prototype mode for too long. I believe that two weeks is the maximum a prototype should take. After that, it's a normal product, not a proof-of-concept anymore. The video is here: https://youtu...
2019-05-28
05 min
yegor256 podcast
M87: If you are afraid of being replaced, you are not a good programmer
Most programmers feel uncomfortable realizing that their employer may replace them one day. To make this event less likely to happen they do many things in order to make themselves unreplaceable. One of those things is unmaintainable source code, which nobody else will be able to understand if its author is fired. I think that this mindset is not only toxic but also very typical for unprofessional engineers. If you are professional enough, the market always has something to offer you and you always know what is the next step for you, after this team gets rid of you or...
2019-05-27
05 min
yegor256 podcast
M86: The README file must be the only provider of product specification
I think that any repository, be it open source or proprietary, must have a single README file, which must include everything a new contributor needs to know about it: the product statement, the vision, the list of features and non-functional requirements, the list of technical decisions, which are important to know. Unfortunately, this file is very often forgotten, especially in non-OSS products. If you don't have it now, it's never too late to create it, and make it right. The video is here: https://youtu.be/1zCH0xBiCP4
2019-05-22
04 min
yegor256 podcast
M85: The source code is just a part of a software project, not the biggest one
We started reviewing software projects of other companies, just a few weeks ago and our first finding is that programmers don't pay attention to anything aside from the code they write. They don't have build automation, unit testing, static analysis, continuous integration, test coverage control, database versioning, and many other things which are supposed to keep the code together. It seems that this is happening because of the lack of knowledge and experience. The video is here: https://youtu.be/keGVpncTn4Q
2019-05-20
05 min
yegor256 podcast
M84: Don't chase your team members, make them chase you
The job of a good project manager is to organize the team the way that every team member wants to contribute and is ready to go through all possible obstacles and barriers, in order to make sure their results are accepted by the project. If the project manager has to chase programmers, ask them, beg them, and pull results from them, it is a bad project manager and the project is mis-configured. The video is here: https://youtu.be/4j4Kddo5Xgw
2019-05-16
07 min
yegor256 podcast
M83: Strong opinions loosely held is not a problem, the absence of an architect is
A software team where everybody expresses their opinions loudly and strongly, always being ready to admit that "I was wrong," is not able to produce anything serious. This is what I read in one blog post recently. And I do agree with this. However, I disagree with the solution suggested in the blog post. The author suggests programmers be more humble and skeptical, which I believe will only lead to more compromises. We know that compromises are bad for quality. My solution is to have a formally assigned architect, who makes all final technical decisions.
2019-05-13
06 min
yegor256 podcast
M82: Is it possible to open the entire source code base and still make business? Definitely.
When I start talking about 100% open source business model, most people wonder how is it possible to give away the entire source code base and still remain profitable, money wise. I think that any modern digital business has three components of success: the source code, the database, and the community of users, programmers, clients, and so on. If you make your source code fully open, you will only help your other two components (data and community) to grow. In Zerocracy and all our satellite projects, we rely on this business model. We open the code and invest in the community. ...
2019-05-10
06 min
yegor256 podcast
M81: How to make your GitHub repo popular? Eight things to pay attention to.
Do you want to be known in the open source world? If you don't, don't watch this video. If you do, there are eight things you should pay attention to when making a new GitHub repo: 1) make it small, 2) don't depend on other libraries, 3) make your README sexy, 4) write up a complete documentation, 5) ask everybody around to give you GitHub stars, 6) release it, 7) configure continuous integration, 8) communicate with your users via issues and pull requests. You can see how I do it in my libraries, in my GitHub account: https://github.com/yegor256 The video is here: https://youtu.be...
2019-05-08
13 min
yegor256 podcast
M80: Every two weeks you should hire a new auditor to review your software project
Very often software project sponsors complain about the low quality of their programmers. They also say that changing the team doesn't really help. They believe that it's possible to hire the "right" people and everything will be great. This is a myth. Instead of expecting your people to be great, you should control their results, by auditing it with an external expert. I'm suggesting you find such an expert in our Telegram chat: https://t.me/zerocracy. There are almost 400 people, most of whom are true experts. Pay them by the hour and you will be impressed by the changes...
2019-05-06
05 min
yegor256 podcast
M79: Make as many open source libraries as possible, eventually one of them will become a success
I created a simple Ruby library just about two weeks ago: https://github.com/yegor256/iri. I already have more than 60 GitHub stars there. How did I do that? I just published it where I usually publish my open source libraries. There is no secret. I just create them, publish and then some of them (!) become popular. You should do the same. Every time you see an opportunity to make a small piece of code open -- do it. And make them small. The smaller your open source products the easier they are to use and the higher the chance...
2019-05-03
04 min
yegor256 podcast
M78: Programmers are not your property, don't invest in them!
Most companies and project managers feel proud of spending a lot of money for finding programmers, training them, getting them on board. They tell me very often that programmers are their valuable assets and they don't want to lose them since they invested so much into them. That's a terrible approach, which is only disrespectful to us programmers. We are not your property or your assets. We want to be equal partners with your team. Change your attitude before it's too late. The video is here: https://youtu.be/UFfJCRhLCZ0
2019-05-02
07 min
yegor256 podcast
M77: Lines-of-Code don't show anything meaningful, but Hits-of-Code are pretty accurate
It is a well-known fact that Lines of Code (LoC) is a very inaccurate metric for a software developer. It doesn't demonstrate anything and can't be used to measure the progress of a programmer or a number of efforts the programmer puts into the source code. However, there is another metric called Hits-of-Code (or Code Churn), which is calculated differently and perfectly indicates how much time or efforts the repository required to be created. There is a command line tool of mine, which can help you calculate HoC in your repo. There is also a hosted web service, to do...
2019-05-01
05 min
yegor256 podcast
M76: Learn Rational Unified Process to understand SDLC better
Most programmers think that writing code is enough to be useful for a software project. It's not true, especially now, when projects are becoming smaller and teams are more distributed. A modern programmer must understand all the processes and phases of a software development lifecycle. The best way to learn them all, if you ask me, is to study the Rational Unified Process (RUP). The video is here: https://youtu.be/Af0E8Bn8qcw
2019-04-29
05 min
yegor256 podcast
M75: Your presence in social networks is important for your career as a software architect
Most people ask me why exactly I think it's important for a software developer or an architect to be a blogger and stay active on Twitter, for example. I believe, and most recent practical cases prove that a well-connected and "visible" software architect would bring a lot more value to a project than someone who just knows how to write code. The video is here: https://youtu.be/l-bM2XyhlkQ
2019-04-22
04 min
yegor256 podcast
M74: If your project doesn't have a formal Risk List, you are doing management wrong
Risk Driven Development is a powerful concept, which may help you prevent many bad things in your project. Unfortunately, many teams don't know how to do it right. I'm going to publish an online tool for that soon, which will be used by Zerocracy and for anyone since it will be free and open source. The book by Rita Mulcahy: http://amzn.to/266pAYB (you must read it!) Zerocracy is here: https://www.zerocracy.com The video is here: https://youtu.be/WlI6IZ6M7vY
2019-04-18
05 min
yegor256 podcast
M73: It is your job, as an architect, to convert client's requirements into tickets
Microtasking, in order to work properly, requires a certain amount of discipline. First of all, all tasks and communications about them have to happen in tickets. However, our customers are far from being disciplined enough to use tickets for every requirement they have. Instead, they make phone calls, chat with us online, and send emails. I believe that is the responsibility of an architect to make sure each request that is coming from a client turns into a ticket. If you, as an architect, don't do that, you are doing a very bad favor to the project.
2019-04-16
03 min
yegor256 podcast
M72: Zold, like any other young cryptocurrency, needs master nodes to survive
Very often our investors and users ask us why Zold has master nodes, even though it claims to be decentralized and anonymous. I answer that I can't imagine a serious cryptocurrency without a certain amount artificially created master nodes, which help it survive when it is still young. Without them, it will be possible to destroy us easily, just by a majority of hardware, which is not that expensive, while we are young and small. The video is here: https://youtu.be/kNqKLCWFzbY
2019-04-15
03 min
yegor256 podcast
M71: Motivating programmers by equity or profit sharing is a bad idea, it doesn't work
Many startup founders think that by sharing equity with programmers or giving them annual bonuses according to the overall result of the company, they can motivate them to work better. This is a wrong idea because programmers can't control those things. They can control the quality of their code, the speed of its delivery, their unit tests, their build pipeline, and other technical things. By rewarding them for things they don't control, the business only demonstrates that it doesn't understand what it is doing. The video is here: https://youtu.be/MyBbtwKgc9k
2019-04-12
02 min
yegor256 podcast
M69: Write tutorials instead of training and teaching
Every time someone comes to me for a piece of information, I ask myself: "Why? Isn't this information available in our documentation?" And if the answer is "No," I try to improve the documentation, to make that piece of information visible and accessible, to avoid future requests of the same kind. You should do the same. Don't train anybody, don't teach anybody. Instead, write tutorials. Help yourself and your project. The video is here: https://youtu.be/QzU2Fbr3xuI
2019-04-10
02 min
yegor256 podcast
M70: A software team without conflicts can't produce anything of a good quality
Very often my readers complain about me saying that programmers must be in conflict with testers, or code reviewers in conflict with programmers, and so on. They claim that a good software team must have everybody going along and share the same set of objectives. They say that we should work "together," not against each other. I strongly disagree with that. I believe that good management means organizing conflicts and giving people explicit rules for resolving them. That's how quality can be achieved. The video is here: https://youtu.be/DUWiy7fvVzk
2019-04-09
05 min
yegor256 podcast
M68: Is it necessary to be a full-timer first, in order to become a freelancer? Yes, why not!
Being a freelancer and charging $100 per hour, switching projects every few months and living in Bali, sounds like a dream for many programmers. But the question is, how to get there? Where can one get experience and training? Does it seem that the only way to learn to programme is to work somewhere as a full-timer? Yes, why not. Most of you will remain full-timers, but some of you will become freelancers. Those two categories will co-exist on the market. The video is here: https://youtu.be/sJRM4VWkzSM
2019-04-09
03 min
yegor256 podcast
M67: The future of software development has no offices and no companies, only projects
Building teams that were supposed to stay together for many years, was a good strategy, many years ago. Not anymore. The reality of the modern software development market demands us to work with remote programmers, who in most cases will be individual contractors or freelancers. They will not be emotionally attached to the team or to the company. They will be looking for the most interesting projects on the market and will quit the moment they will realize that your project is not the one they fit well with. That's why, if you want your business to be ahead of...
2019-04-08
08 min
yegor256 podcast
M66: If you will manage programmers the way Google does it, you will lose
The current situation on the software development market it terrible: programmers are spoiled by large salaries and very high demand. They know that their managers can't really do anything with them, can't make them work faster or better, can't fire them, and can't enforce any discipline. Large companies, like Google or Facebook, have the luxury of buying 10 times more programmers than they really need, that's how they solve their productivity problems. However, if you don't have that amount of money, you must not manage your programmers the way Google does it. You need a better management formula. Which one? Microtasking...
2019-04-05
05 min
yegor256 podcast
M65: If you need to learn the code around your microtask, don't do it! Create a new ticket.
When a microtask arrives to you, very often you may need some additional information, which is not specified in the task description. Your first intent would be to go and find that information, even if it's not available. This would be a mistake. You should not spend your time, which is a valuable project resource, on something the management hasn't approved yet. You should create a new ticket/task and ask for additional information. It will be provided and you will be able to continue your main task. The video is here: https://youtu.be/XYXNOOH8q3M
2019-04-04
05 min
yegor256 podcast
M64: You want your programmers to be your enemies? Pay them monthly.
Most managers and business owners believe that programmers are interested in their ideas, in their business, in their vision. They expect programmers to work because they share a global vision. In reality, it doesn't work that way. Programmers work for their own profit and care about their own personal results. If the business fails to align its objects with personal objectives of its programmers, it will get enemies, not friends. The video is here: https://youtu.be/TvvSQq_c4X8
2019-04-02
06 min
yegor256 podcast
M63: The growth of Zold rate is direct marketing expenses of Zerocracy
The business model of Zerocracy by definition requires a pretty big amount of venture capital in order to connect many programmers with many customers and make them attractive to each other. In order to attract VC money, we have to demonstrate them the traction on the market. Zold is going to help us achieve exactly that, by collecting micro-investments from you and showing bigger money people that the market is interested in us. Help us make Zerocracy bigger, invest in Zold! The video is here: https://youtu.be/sbONYCd5iUI
2019-03-29
06 min
yegor256 podcast
M62: Five steps to migrate from traditional management to microtasking
Microtasking is a great method of managing programmers, but it's very difficult or almost impossible to switch to this new model of work from traditional full-time management. There is a list of five simple steps I would recommend you making with your team if you want to get yourself ready for microtasking in a few months or a few years. First, make sure the use GitHub. Second, make them report their weekly results in a list of completed tasks. Third, make sure their code gets into the repository via pull requests and only after code reviews. Fourth, invite external reviewers...
2019-03-28
09 min
yegor256 podcast
M61: What do you do when a client says that everything is wrong and has to be done from scratch?
What do you do as a customer, when you realize the your architect is totally wrong and the architecture is flawed and you have to start from scratch? Most likely, you got aware of that from one of your friends of the experts you invited to the project. What's next? Replace the architect? Start from scratch? Or continue working with the existing team? My recommendation: never start from scratch. The video is here: https://youtu.be/RWV6f90eHek
2019-03-27
09 min
yegor256 podcast
M60: Ask a software team for a quote only to check whether they refuse to provide it
How much would it cost to create a Twitter clone? You won't believe how often I hear this or similar questions. There is no such thing as a realistic estimate of a software price if we are talking about a more or less big product. It starts with a few thousand dollars and ends with a few billion if the product becomes successful on the market. Those who tell you that to develop your app would cost, say, $100,000 are just trying to fool you or they don't understand what they are talking about. The video is here: https://youtu.be...
2019-03-26
05 min
yegor256 podcast
M59: How to not get frustrated when dealing with freelancers and microtasking?
A team of freelancers working in a microtasking mode is not focused on your business objectives, by definition. They are doing what they are willing to do, randomly covering the entire scope of the product's functionality. This is why so many customers get frustrated when they experience this for the first time. In order to avoid this frustration, you should do something, to align technical goals with your business objectives and focus the team on tickets, which are important. The video is here: https://youtu.be/w3HwEtFU2wo
2019-03-25
07 min
yegor256 podcast
M58: Don't expect UI/UX people to work in microtasking mode, they are too creative for that
Very often customers of Zerocracy ask me whether we can find them some good UI/UX designers, who will make sure their application looks great and can work together with programmers. We can't do that because UI people are too artistic and their work has no explicit borders. It's better to find them somewhere else, make sure they are managed and disciplined somehow differently and let programmers integrate their code with their creativity, somehow. How exactly you do that, depends on many technical factors. The video is here: https://youtu.be/dzepTbcQkgU
2019-03-22
05 min
yegor256 podcast
M57: Tech startups fail mostly because of software development incompetence
Why do startups fail? Conflicts between investors and founders, marketing issues, lack of customer development, not enough money, etc. I believe that all those issues are secondary. The primary cause of problems is the inability to manage programmers right and make sure they deliver what they promise to deliver. Everything else happens as a consequence of the technical incompetence of the software team. The video is here: https://youtu.be/AwN4emJT0n4
2019-03-21
07 min
yegor256 podcast
M56: Don't expect your architect to be an expert in your tech stack, that's what developers are for
Very often our customers in Zerocracy expect software architects to be very knowledgeable in the tech stack they are going to use in their projects. Even though it doesn't hurt, but this is not what software architects are for. An architect is not going to be the knowledge provider in the project, instead, he or she has to know where to find the right experts, how to engage them, how to motivate them, and how to deal with the information flow they provide and programmers work with. Soft skill is what differ an architect from a regular programmer. The full...
2019-03-20
05 min
yegor256 podcast
M55: The programming language you choose must match your project business objectives
Many customers, who pay for software development, think that some programming languages are fast, while others are slow and when they need a great/fast/awesome application, they need to use the language some other team has been using before and managed to create some other great application. This is the wrong approach. Instead, when you choose the language pay attention to how it matches your business objectives. Whether your project is going to be alive for a month or a few years, how big will be your team, how much money do you have to hire experts, how disciplined...
2019-03-19
07 min
yegor256 podcast
M54: Make sure you control your programmers and do it explicitly and openly
I've heard it very often that people don't like the word "control" being applied to a group of programmers. They find it abusive, offensive, and de-motivating. I absolutely disagree with this. Control is abusive only if it's implicit, hidden, and not obvious. However, if the rules of work are well defined, accepted by everybody and applied strictly, just like those laws we all know in civil life, control is not abusive at all. The video is here: https://youtu.be/ezE0hRH9BnQ
2019-03-18
04 min
yegor256 podcast
M53: What do I think about Agile? It's a recipe for disaster, if you are a project sponsor.
Agile, as a software development methodology, was invented by programmers and for programmers, to make things easier for them and to get a perfect excuse when things go south. In Agile the management is not in charge anymore, can't control things, can't really predict anything, and can't blame programmers for mistakes. If you are a programmer, Agile is your perfect shield against most of the problems in the office. If you are a project sponsor, it's your ticket to failure. The full video is here: https://youtu.be/OOAMNOso46g
2019-03-15
04 min
yegor256 podcast
M52: Three-branches release model: Master, Release Candidate, Live
In order to isolate your production from the "dirty" master branch, I'm suggesting to use a simple release/delivery model. First, you let everybody commit to the "master" branch, of course, after they pass all unit/integration tests and the entire merge pipeline. Then, you create a candidate branch, which you deploy to the staging environment and let your testers break it as much as they can. Then, when it becomes obvious that testers can't find anything critical there, you the "candidate" branch into the "live" branch and deploy to production, via the deployment pipeline. You may have a number...
2019-03-14
10 min
yegor256 podcast
M51: Don't hide error stacktraces, make end-users part of your quality control instead!
Most big websites I work with don't show their error details when something goes wrong. Here is an example: my account with Amazon is in trouble and I see nothing except the "We are sorry" message from them. Instead, I believe, would be much better to show me much more technical information and make me part of the development process. That's what we do in our projects: making our technical defects as much visible for end-users as possible, in order to make them fixed faster. The video is here: https://youtu.be/t1locjBAXYY
2019-03-12
05 min
yegor256 podcast
M50: Testing is the process of confirming that the software has defects (JPoint talk rehearsing)
The biggest problem of modern software testing is that neither testers, nor programmers, or their managers understand the role of a software tester. A tester is not someone who confirms that the software works as intended. Instead, a tester is the one who confirms that the software has bugs and who knows how to discover them and document. I will be speaking in JPoint in a month, exactly with this topic. Here is a short rehearsal of my presentation for them. I'm interested in your comments, criticism and suggestions. The video is here: https://www.youtube.com/watch?v=D5...
2019-03-11
14 min
yegor256 podcast
M49: Zold is an experimental non-Blockchain cryptocurrency, made by Zerocracy
There are many cryptocurrencies on the market, while 99.9% of them are based on the Blockchain architecture, with some modifications. About a year ago we decided to try to create our own solution, which would be a true alternative to Blockchain. It seems that we managed to achieve what we planned and now it's the right time for you to join us and convert your bitcoins to zolds. This is how you will help Zerocracy and will make yourself a profit. The video is here: https://www.youtube.com/watch?v=5A9uBwMow0M
2019-03-07
07 min
yegor256 podcast
M48: If you depend on your programmers, you are a bad architect!
If I would need to create software for a nuclear power station, who I would work with: freelancers or full-time employees? Of course, the first intent is to get a team of full-timers who we can "trust" and who will care about the business, will be committed to it and will feel personal responsibility. However, this is a very wrong idea. The business will eventually suffer because of lost control. In order to stay in charge of the quality the business should work with people who care mostly about themselves. Freelancers are exactly that type of people. If you manage...
2019-03-06
06 min
yegor256 podcast
M47: What is the difference between Zerocracy and Upwork? We are not competitors!
Very often this question is asked: how Zerocracy can be compared with Upwork and similar platforms for freelancers. Long story short, we are not competitors and can't be compared directly. Upwork provides unmanaged teams of freelancers, while Zerocracy turn them into managed teams. You may and should find freelancers in Upwork and then come to Zerocracy and let your team work under the management of our AI and according to our policy of work. Hope this helps. The full video is here: https://www.youtube.com/watch?v=A6AC2Tgyhzs
2019-03-05
05 min
yegor256 podcast
M46: Freelancers and full-times are like oil and water, don't mix them, they are not friends
When your objective is to put programmers together in one office and make them look like hard working slaves, spending the money of your investors, you definitely need full-timers, with good salaries and benefits. However, if you need to achieve results, and you know how to manage programmers, you need freelancers, who work for results, for money, and for themselves. You don't mix those two categories, they are absolutely different. And you don't apply the same selection criteria to those two groups. The video is here: https://www.youtube.com/watch?v=hDsy-D5zaVs
2019-03-04
06 min
yegor256 podcast
M45: Freelancers and full-timers have very different resumes, don't expect them to look similar
Changing jobs frequently is usually considered to be a sin for a professional programmer. Recruiters don't like that and to leave just a few places in the resume, to look more "loyal." However, this is not true for freelancers, who by definition change projects frequently. That's why their resumes have to look very different and recruiters and project managers have to be ready to read them differently. The full video is here: https://www.youtube.com/watch?v=31xOLs-DqTo
2019-03-01
09 min
yegor256 podcast
M44: What do you think you are a senior developer? Who says so? Think again.
Being a senior developer doesn't mean getting a large salary or being appreciated in the office. It means belonging to an elite group of developers who know how to do certain things and can do them. If you want to be senior, think again about open source contribution, about StackOverflow participation, about conferences and certifications. Without that, you are just yet another programmer, one of a million. The full video is here: https://youtu.be/Y_IUzt-Oyww
2019-02-28
07 min
yegor256 podcast
M43: Technical interviews are pointless, pay attention to these five things instead!
Most software teams interview programmers before getting them on board. Later they get surprised how was it possible to hire someone who doesn't understand programming. Those so-called "fake interviews" would not exist if we would let the market vouch for programmers, instead of us relying on the information we manage to collect at those Skype calls. We, in Zerocracy, pay attention to five things that are important: 1) GitHub reputation, 2) Stackoverflow history, 3) certifications, 3) conferences, 4) blogging experience. Once a programmer has all of those, we know that he/she is senior enough for us. The full video is here: https://www.youtube...
2019-02-27
06 min
yegor256 podcast
M42: Make sure your software is deployable from the first day!
The first thing you should worry about when you start a software project is how your product can be delivered to end-users in an automated way. Right after you managed to create a skeleton and make it "work on your laptop," start configuring the deployment pipeline. Only after it's done, demonstrate your product to your testers, partners, investors, customers, etc. Don't tell them that your product is in GitHub and if they want they can check it out themselves. This is very unprofessional. Make sure they can touch the product where its end-users will see it when it's fully ready...
2019-02-25
03 min
The Art Of Programming
Выпуск №173 — The Art Of Programming [ DevOpsConfRussia ] Главное не качество, а количество
Егор Бугаенко в кругу подкастеров на конференции DevOpsConfRussia 2018 Главное не качество, а количество Fear driven development — нанимать лучших, тренировать, мотивировать, наказывать, увольнять Code Ahead by Yegor Bugayenko https://www.amazon.com/dp/1982063742 Zerocracy https://www.zerocracy.com Zerocracy Policy https://www.zerocracy.com/policy.html Благодарности патронам: Aleksandr Kiriushin, B7W, BigB, Eduard Matveev, Fedor Rusak, Grigori Pivovar, Konstantin Kovrizhnykh, Konstantin Petrov, Lagunovsky Ivan, Leo Kapanen, Mikhail Gaidamaka, Neikist, nikaburu, Pavel Drabushevich, Pavel Sitnikov, Sergey Kiselev, Sergey Vinyarsky, Sergii Zhuk, Vasiliy Galkin, Евгений Власов, Никита Ложников, Сёмочкин Максим Поддержи подкаст http://bit.ly/TAOPpatron Подпишись в iTunes http://bit.ly/TAOPiTunes Подпишись без iTunes http://bit.ly/TAOPrss Скачай подкаст http://bit.ly/TAOP173mp3 Старые выпуски http://bit.ly/oldtaop
2018-10-08
1h 06
Devskiller's Yellow Duck Podcast
A Conversation about Software Development with Yegor Bugayenko
Yegor Bugayenko is a professional Java engineer and project manager with certifications in PMP®, RUP, PRINCE2 Foundation, MCP, and COSMIC. He’s an author, blogger, avid Twitter user boasting 12,000 followers. In this conversation he'll discuss a variety of topics including managing software engineers, project management, how to select the best engineers and more.
2018-08-22
00 min
The Collaboration Superpowers Podcast
170 - From The Archives: Extreme Results Oriented Working With Yegor Bugayenko
Teamed.io develops software in an "extremely" distributed mode. They have no central office, no meetings, no conference, calls, and no Skype chats. They work through task management systems and call it: "Team as a service". I interview Yegor, Founder and CTO, about this unique way of working! For more stories, visit www.CollaborationSuperpowers.com.
2017-11-27
45 min
The Art Of Programming
Выпуск №135 — The Art Of Programming [ Drinking ] Аннотации зло
Artifactory и Conan.io Впечатления от jPoint Cory HouseFollow — Why I Stopped Using Multiple Monitors. A Single Monitor Manifesto // http://bit.ly/TAOP135mon Рабочий стол Баруха // http://bit.ly/TAOP135b Yegor Bugayenko — Java Annotations Are Evil (in Russian) // http://bit.ly/TAOP135aae Yegor Bugayenko — Elegant Objects // http://bit.ly/TAOP134eo Максим Дорофеев — «Джедайские техники. Как воспитать свою обезьяну, опустошить инбокс и сберечь мыслетопливо» // http://bit.ly/TastyBooks61shared Новые патроны: Евгений Власов, Vasiliy Galkin, Grigori Pivovar, Yakov Благодарности патронам: Sergey Kiselev, Sergey Petrov, Sergey Vinyarsky, Bogdan Storozhuk, Aleksandr Kiriushin, Sergii Zhuk, Pavel Sitnikov, Yakov Krainov, Lagunovsky Ivan, Konstantin Kovrizhnykh, Евгений Власов, Vasiliy Galkin, Grigori Pivovar, Nikolay Ushmodin, Pavel Drobushevich, Yakov, B7W Поддержи подкаст http://bit.ly/TAOPpatron Подпишись в iTunes http://bit.ly/TAOPiTunes Подпишись без iTunes http://bit.ly/TAOPrss Скачай подкаст http://bit.ly/TAOP135mp3 Старые выпуски http
2017-04-12
45 min
The Art Of Programming
Выпуск №134 — The Art Of Programming [ Book ] Долой экспертов
Фоточки CodeFest 2017 http://bit.ly/TAOP134cf Уже идёт JBreak https://2017.jbreak.ru Последний шанс на JPoint https://jpoint.ru Yegor Bugayenko — Elegant Objects // http://bit.ly/TAOP134eo Yegor Bugayenko — Get Rid of Experts, AgileDays 2017 // http://bit.ly/TAOP134groe Максим Дорофеев — «Джедайские техники. Как воспитать свою обезьяну, опустошить инбокс и сберечь мыслетопливо» // http://bit.ly/TastyBooks61shared Galaxy S8 // http://bit.ly/TAOP134gs8 Jeff Barr — Amazon Connect – Customer Contact Center in the Cloud // http://bit.ly/TAOP134ac Salesforce Announces Service Cloud Einstein and Amazon Connect Integration // http://bit.ly/TAOP134sf Magnet http://magnet.crowdcafe.com Spectacle https://www.spectacleapp.com Moom https://itunes.apple.com/us/app/id419330170 Amethyst http://ianyh.com/amethyst/ Благодарности патронам: Sergey Kiselev, Sergey Petrov...
2017-04-04
45 min
yegor256 podcast
Java vs OOP (JavaDay Kyiv 2016)
Java vs OOP (JavaDay Kyiv 2016) by Yegor Bugayenko
2016-10-15
52 min
The Collaboration Superpowers Podcast
8 - Extreme Results Oriented Working (Yegor Bugayenko)
Teamed.io develops software in an "extremely" distributed mode. They have no central office, no meetings, no conference, calls, and no Skype chats. They work through task management systems and call it: "Team as a service". I interview Yegor Bugayenko, Founder and CTO, about this unique way of working! For more stories, visit www.collaborationsuperpowers.com.
2014-11-10
45 min