Blog Feed Post

A Soviet programmer on open source software

Just read this article about the recent GitHub Open Source survey revealing that 93 percent of people reported being frustrated with “incomplete or confusing documentation”. While I definitely agree that good documentation is key to the adoption of any software, I’d like to go back in history and reflect on my rather long experience in the industry.

Thirty years ago I lived in a country called USSR. I was a young programmer back then. Iron curtain. No Google. No StackSverflow. Can you believe this? The West was far ahead in creating both hardware and software. Up until the Gorbachev’s Perestroika there was no way to officially purchase IBM or DEC computers. Skillful Soviet engineers would create copies of leading Wester brands. In the mainframe arena, the IBM System/360 and System 370 were represented by clones called “EC” (read/translate this). DEC PDP series was represented by the SM computers (see this). We knew this, but who cared?

There was an organization in Bulgaria that was translating and adapting the original IBM/DEC documentation and releasing it as official docs for the EC/SM machines. The software documentation was poorly written, but that was OK. Soviet software developers were well-educated people who could “figure it out”. I lived in Kiev, Ukraine. Since I could read English, my boss (a progressive man) would take me to a business trip to the central technical library in Moscow where we’re sitting and reading the latest issues of the Datamation magazine to learn the trends. He was skimming trough the magazines and asked me to read and translate the titles of the articles and then translate those that seemed interesting to him. These were fun business trips. We’d bring home copies of interesting articles, and most importantly, oranges, bananas, and sausages that were hard to get in Kiev.

With Perestroika, more and more of the Western software started to appear in the USSR. That was close-source software. A small number of lucky programmers (myself included) were working in the organizations that had “hard currency” and could purchase hardware and software from the West. Back then, some of the software products were sold in two versions: with or without the source code included. The latter option was a lot more expensive. Why? BECAUSE WE WOULD BE ABLE TO READ AND MODIFY THE CODE TO OUR NEEDS!

Isn’t it what the open source software is about? TO BE ABLE TO READ AND MODIFY THE CODE. The open source movement also allows and encourages you to contribute the improved software back to the community (if your employer permits).

Ironically, many of today’s enterprise programmers use the open source products not because the source code is available, but because it’s free. Day in and day out, some weird-looking geeks are stealing time from their families out for writing software for free to make the world a better place. Some other geeks spend their time on StackOverflow solving your problems for free. Millions of bloggers (myself included) write blogs happily sharing what they’ve learned about open source products.

If you like our profession, become a contributor too. You don’t have to be a superstar programmer. You may have a talent to explain the software written by others. This is a very valuable talent. Trust me, I’ve seen so many brilliant programmers who can easily write amazing code but have hard times explaining it to others.

Clone a GitHub project, find the folder with an existing documentation (or create one), write and add your article, and submit a pull request. You’ll be surprised, but most likely your contribution will be accepted and you’ll become a proud contributor to an open source project. You don’t even have to become an official contributor. Just blog about the software you like and understand. Writing about software not only helps others, but helps yourself to be better at it!

Read the original blog entry...

More Stories By Yakov Fain

Yakov Fain is a Java Champion and a co-founder of the IT consultancy Farata Systems and the product company SuranceBay. He wrote a thousand blogs (http://yakovfain.com) and several books about software development. Yakov authored and co-authored such books as "Angular 2 Development with TypeScript", "Java 24-Hour Trainer", and "Enterprise Web Development". His Twitter tag is @yfain

Latest Stories
"ZeroStack is a startup in Silicon Valley. We're solving a very interesting problem around bringing public cloud convenience with private cloud control for enterprises and mid-size companies," explained Kamesh Pemmaraju, VP of Product Management at ZeroStack, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"Codigm is based on the cloud and we are here to explore marketing opportunities in America. Our mission is to make an ecosystem of the SW environment that anyone can understand, learn, teach, and develop the SW on the cloud," explained Sung Tae Ryu, CEO of Codigm, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
In his session at 21st Cloud Expo, Carl J. Levine, Senior Technical Evangelist for NS1, will objectively discuss how DNS is used to solve Digital Transformation challenges in large SaaS applications, CDNs, AdTech platforms, and other demanding use cases. Carl J. Levine is the Senior Technical Evangelist for NS1. A veteran of the Internet Infrastructure space, he has over a decade of experience with startups, networking protocols and Internet infrastructure, combined with the unique ability to it...
High-velocity engineering teams are applying not only continuous delivery processes, but also lessons in experimentation from established leaders like Amazon, Netflix, and Facebook. These companies have made experimentation a foundation for their release processes, allowing them to try out major feature releases and redesigns within smaller groups before making them broadly available. In his session at 21st Cloud Expo, Brian Lucas, Senior Staff Engineer at Optimizely, discussed how by using ne...
"CA has been doing a lot of things in the area of DevOps. Now we have a complete set of tool sets in order to enable customers to go all the way from planning to development to testing down to release into the operations," explained Aruna Ravichandran, Vice President of Global Marketing and Strategy at CA Technologies, in this SYS-CON.tv interview at DevOps Summit at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"There's plenty of bandwidth out there but it's never in the right place. So what Cedexis does is uses data to work out the best pathways to get data from the origin to the person who wants to get it," explained Simon Jones, Evangelist and Head of Marketing at Cedexis, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"Cloud Academy is an enterprise training platform for the cloud, specifically public clouds. We offer guided learning experiences on AWS, Azure, Google Cloud and all the surrounding methodologies and technologies that you need to know and your teams need to know in order to leverage the full benefits of the cloud," explained Alex Brower, VP of Marketing at Cloud Academy, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clar...
Large industrial manufacturing organizations are adopting the agile principles of cloud software companies. The industrial manufacturing development process has not scaled over time. Now that design CAD teams are geographically distributed, centralizing their work is key. With large multi-gigabyte projects, outdated tools have stifled industrial team agility, time-to-market milestones, and impacted P&L stakeholders.
Gemini is Yahoo’s native and search advertising platform. To ensure the quality of a complex distributed system that spans multiple products and components and across various desktop websites and mobile app and web experiences – both Yahoo owned and operated and third-party syndication (supply), with complex interaction with more than a billion users and numerous advertisers globally (demand) – it becomes imperative to automate a set of end-to-end tests 24x7 to detect bugs and regression. In th...
Enterprises are moving to the cloud faster than most of us in security expected. CIOs are going from 0 to 100 in cloud adoption and leaving security teams in the dust. Once cloud is part of an enterprise stack, it’s unclear who has responsibility for the protection of applications, services, and data. When cloud breaches occur, whether active compromise or a publicly accessible database, the blame must fall on both service providers and users. In his session at 21st Cloud Expo, Ben Johnson, C...
"Infoblox does DNS, DHCP and IP address management for not only enterprise networks but cloud networks as well. Customers are looking for a single platform that can extend not only in their private enterprise environment but private cloud, public cloud, tracking all the IP space and everything that is going on in that environment," explained Steve Salo, Principal Systems Engineer at Infoblox, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Conventio...
Data scientists must access high-performance computing resources across a wide-area network. To achieve cloud-based HPC visualization, researchers must transfer datasets and visualization results efficiently. HPC clusters now compute GPU-accelerated visualization in the cloud cluster. To efficiently display results remotely, a high-performance, low-latency protocol transfers the display from the cluster to a remote desktop. Further, tools to easily mount remote datasets and efficiently transfer...
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"MobiDev is a software development company and we do complex, custom software development for everybody from entrepreneurs to large enterprises," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Agile has finally jumped the technology shark, expanding outside the software world. Enterprises are now increasingly adopting Agile practices across their organizations in order to successfully navigate the disruptive waters that threaten to drown them. In our quest for establishing change as a core competency in our organizations, this business-centric notion of Agile is an essential component of Agile Digital Transformation. In the years since the publication of the Agile Manifesto, the conn...