Starting in technology without coding
As we delve into the possibilities that lie beyond traditional office computing, we discover a world where cloud systems, mobile technology, and smart community paves a technical path without coding.
In the ever-evolving landscape of technology, the journey to digital literacy often begins without a single line of code. I have been exploring the transformative potential of technology education in rural and impoverished areas. And how it can ignite a passion for learning and innovation.
From my early days learning computer programming at home to leading a production support team, I relied on the power of curiosity and self-education. Today I want to explore the opportunities for others to start without coding.
How I got started
When I was in 6th grade, my friend’s math teacher had a computer, a Timex Sinclair 1000. She allowed her students to come in and use it during their study hall. She was more than happy to share with any student who wanted to learn. She even allowed me to use it even though I wasn’t in her class. Later that year, my friend sold me his computer, a Commodore Vic-20. He upgraded to the latest Commodore 64.
Mrs. Beck, the afore mentioned math teacher, encouraged me to subscribe to a couple of computer magazines. The magazines were full of computer programs which I could type into the computer and run. These magazines helped me to learn programming. Compute’s Gazette was specifically for the Commodore computer, but many of the programs were for Commodore 64. And Compute covered all of the major home computers which included Apple, Atari, TI, Timex, TRS-80, and IBM as well as Commodore. So I often had to rewrite the programs for my computer. This gave me a good understanding of the different home computer systems available at the time.
I couldn’t afford to buy software and I refused to illegally copy software. I had to rely on what was published in the magazines. Rewriting the programs taught me how to read and understand computer code. This experience gave me an ability to reason through how an application works.
This explains how I became so good at troubleshooting. In fact, several years later, I was the production support lead on a project at MCI. For security reasons, developers could not have access to the production system. While support staff could not have access to the source code. One time, we had a problem that caused one of the applications to crash regularly. It had been going on for months. The developers were at a loss to determine what was causing it. Finally, I told the developer to look for an “if” statement on a specific condition. Within that block he would find a statement references a specific field of data. I told him, there is probably an error in how that data was being referenced. He spent a week looking through the code and kept saying “there is no code that does that”. The lead developer said “If Chet says it does, it does it, keep looking” Finally, the lead developer sat down with the other developer and they went through the code together. Later that afternoon, he gophered* and said “You were right, it is exactly as you described it.” The other developer asked me how I could have possibly known the code to that detail without ever seeing the code. I told him, I know how this system runs and I could deduce the code from that.
*gophering - when someone stands up in their cubicle, often to speak over the wall to someone in a neighboring cubicle. Looking across a room of cubicles, it often looks like a field of gophers sticking out of their burrows.
Beyond Office Computing
Traditionally, education often starts from the point of view of business computing. Living in a poor community in Brazil, I realized, the issue with starting from business computing. The businesses weren’t using technology yet. We could teach business computing skills, but they still wouldn’t have jobs available in the local community. While teach office computing skills, we also needed to pursue digital transformation in the local businesses. I started looking at some different approaches to technology education. There is so much available beyond basic office computing.
Cloud Systems (most systems today are cloud based)
Smart Phone and Mobile Technology
Social Media and Digital Marketing
Location Based Services
Gig economy services
Raspberry PI, Arduino, and Internet of things
Home Automation
Agricultural Automation
Smart Communities Technology
Robotics
Consumer Computing and Electronics
Learning skills without coding
Today’s system have so complex you can build a strong consulting business without coding. Here are some steps for someone to start from nothing.
You don’t need the latest equipment
Your smart phone is far more powerful than the first computers I used. In fact, NASA put astronauts on the moon with less power than most people carry around in their pockets. Many businesses kept their books, analyzed trends, and even did computer aid design and animation with far simpler computers than your smart phone.
Learning some basic skills
Learning some basic technology doesn’t require programming. Many people make very good money creating and selling products and services based on knowledge of a system they use online. I see many people doing complex things editing video’s and create graphics for Instagram. But there are many other applications and systems that you can start with.
A consultant is the person who knows how to find the answers
Once you find an application or system you are interested in, read through the documentation. Get to know the help system, knowledge base, and join the user community. With a basic knowledge of an application’s support system, you can quickly become an expert and start helping others. Honestly, this is how you start as a consultant.
Expanding to integrated applications
The more you learn about a system, the more you will find other systems that integrate with it. Even social media systems have integrations with sales automation tools. Learning about how to use these integrations can open even more doors. This is a good way to learn about how data moves between systems.
Workflow Automation
Once you start exploring how different applications can interact, you can start exploring workflow automation. There are many domain specific workflow systems. For example, in the area of social media there are automatic posting tools. And more complex sales and marketing automation systems. You can also move further into general purpose no-code automation and app building tools.
Home and Community Automation
Here is the primary area I am currently researching. We recently went to a small river community along the Amazon to discuss expanding their electronics education program. They were very interested in learning more about automation so that they can reduce their energy usage as they are considering a project to transition to fully solar energy. Currently most homes use gas generators and a few homes and businesses have some solar panels.
Yuri and I spent the past several months in Europe exploring some of the smart cities and makerspaces to get some ideas of what we can do. One of the first cities we visited was Malaga Spain. They have an amazing program which includes home energy conservation training, smart cities educational programs, as well as a business incubator. Their citywide education and conservation program resulted in a significant reduction in residential energy usage.
We began exploring some of the Raspberry Pi educational kits for smart cities and smart agricultural technologies. The more I have explored these, the more I realize this would be a much better way to introduce technology education in the rural and poor communities. These technologies have wide ranging applications in consumer electronics, home automation, agricultural automation robotics, and smart communities.
Opportunities with Open Source Software
The above describes some ways to start gaining some technology skills. There is much you can learn from the applications and systems you currently use. I highly encourage you to start paying close attention to how applications work. Especially how different components interact. Use the data export feature to see how the raw is organized. Look at the API documentation to learn how more about how the system runs. It won’t be long for you to think of an app you could build or an integration you could master to sell to other users.
Open source software is a great way to learn about how software is written. Find something you are interested in and start using it. Join the community and start looking through the closed issues. If it is on GitHub, you can review the source code in the pull requests. The issue discussion should give you a good description of what that could is doing. Often it will describe both what it should do and what it is doing wrong. By reviewing the code in the pull request you can see how the code was changed to fix the issue.
Most larger open source applications will have developer documents that describes the architecture of the system. So be sure to read that documentation. Also the developers often have a blog or discord community where they discuss design choices.
Once you start getting familiar with the system you could can start helping with the project. Even if you aren’t ready to delve into the code, there is documentation and testing support that you can help with. You can easily build a consulting business providing installation and technical support. Once you are ready to try coding find an open issue and start working on it.
Wow! I Am amazed!