Coders Typing

Code Platoon Week Four – SQL and Working With Databases

Programming languages come and go. Frameworks come and go. SQL (structured query language) is forever. Students will spend week four learning how to read and write data to Postres, a modern database, using SQL. Students will learn the basics of database design and how to incorporate a database into their app.

Working With a Database

Saving data to a file is fine for small applications that have limited functionality, but most modern web applications use a relational database. We’ll spend all of week four learning the tools and practices that will allow students to interact with data in much more dynamic and complex ways. The first step will be learning how to create and talk to a database. Databases have their own languages for accessing and manipulating the information they hold. By far the most popular, and the one students will focus on throughout their time at Code Platoon, is SQL. Students will learn how to set up a Postgres database from scratch. They’ll work on building out a schema and start to read and write data, all using SQL.

Database Design

The design and structure of a database can have a huge impact on an application’s performance. Databases need to be adaptable, scalable as an application grows, and changeable as new features get added. They also need to be secure. At Code Platoon, we teach all the skills students will need to build a database that is effective and efficient, and we’ll discuss best practices when it comes to how to store sensitive data like passwords and other personal user information. The highlight of this week will be a day-long database workshop hosted by Hashrocket. Hashrocket is a web consultancy in Chicago / Jacksonville Beach known for creating quality software. One of the presenters will be Jake Worth, a US Army veteran-turned-programmer.

ORM

SQL is a powerful tool but it can get tedious to write. Most languages have something called an object relational mapper or ORM. Python’s ORM is called Alchemy. Think of it as a way to talk to your database using the Python programming language. ORMs help developers read and write to the database more quickly and efficiently. They also cut down on code you have to write.

By the end of week four, students will have most of the nuts and bolts necessary to build their own web applications. We’ll spend week five looking at how to structure and style web pages before jumping into our first framework, Django, where all of the pieces from prior weeks will finally come together.

code platoon objects and data

Code Platoon Week Three – Objects and Data

Week Three is all about data and industry best practices. Students learn the ins and outs of Object Oriented Programming and why it’s such an effective model for writing code and handling data.

Reading and Writing Data

You can’t get too far into programming without eventually having to deal with data. As students develop their skills, they’ll begin to create larger applications. As these apps grow, they will need to consume and create more and more data. We’ll look at ways to organize and save data to files using popular formats like comma separated values (CSV) and javascript object notation (JSON). The latter is one of the most popular ways of passing data around on the web, and working with each will provide a solid foundation for students when we finally get to storing large amounts of information in databases.

Working With Objects

Once students are comfortable reading and storing data, we’ll teach them how to use Python and Javascript to build something useful with that data. One of the most popular ways programmers represent and handle data in their applications is with a paradigm called Object Oriented Programming. OOP allows programmers to easily model and manipulate data in their applications. It’s at the heart of many web applications, and it will be the foundation on which students will create their own programs moving forward.

Code Style

Great code doesn’t just have to be performative, it also has to be readable to other developers. Large applications usually have many hands poking into many parts of the code base. Even on small teams, messy code can lead to large problems. Things like naming conventions, indentation, and where and when to add comments can all affect how code is read and understood by other programmers. We’ll walk students through best practices so that the code they write will always be easy to understand and live up to industry standards.  

We’ll also explore some tools (remember those outside third-party libraries from week two?) which will ensure that by the end of week three, Code Platoon students are writing squeaky-clean code.

Week Two

Code Platoon Week Two – Teamwork and test driven development

As Code Platoon students continue to develop fluency in both Javascript and Python, we’ll introduce an approach to testing that catches bugs before they make their way into production code. We’ll also explore a critical success factor in the journey of any software developer which is the ability to collaborate. Students learn how to access free-to-use, or ‘open source’ libraries of code written by other developers before diving into the first of several group projects.

Proactive versus reactive code testing

An often overlooked, but extremely valuable skill when writing code is testing that code. The larger and more complex a developer’s codebase, the more likely it is that things will go wrong or break down. To ensure a small bug doesn’t have a ripple effect that takes down a whole system, good software developers learn to test their code early and often.

Writing effective tests is a skill in its own right. At Code Platoon we teach students to practice Test Driven Development (TDD). TDD is a methodology that anticipates and reduces the likelihood of bugs by proactively coding tests around a desired function before designing and implementing that function.

The tests tell the software developer what the function should not do so that their initial attempt at writing the code which supports that function is clean and less prone to rework. It is a common practice throughout the tech world, but it cannot be taken for granted!

Seeing code through the eyes of others

Developers write lots of code, for sure, but they also spend an enormous amount of time working with code written by someone else.

Before diving into a new codebase from another coder, a developer must first understand how its components interact to achieve the desired result. The ability to do so requires a level of patience, knowledge of predefined constructs, and pattern recognition that does not factor into autonomous code writing.

Getting comfortable using third party libraries enables developers to build really cool stuff at a much faster pace! At Code Platoon, students learn how to search for, install, and use these libraries in both Javascript and Python. We spend time digging through documentation, and discuss the best practices for troubleshooting code that isn’t your own.

Previous Week

 

The Best Paying and Most In Demand Programming Languages in 2018

At Code Platoon, we track national demand for programming languages so that our veterans and military spouses are trained with the best tools for a career in software development. When you’re deciding which programming language to learn, the following demand-based insights complement a much broader strategy.

This article attempts to answer which programming languages command the highest salaries and are most frequently targeted in job postings.

How we identified the current top programming languages

To answer our questions, we conducted simple searches on Indeed.com, one of the largest job listing sites.

For the question of compensation, we started by searching for the top 15 most popular languages in a recent Stack Overflow survey and mapped the average salary for job listings with those languages. For demand, we tracked the number of total job postings targeting those same languages.

Ranking programming languages by pay and number of openings

Python: This coding language holds the #2 position in both surveys. Python is an interpreted, multi-purpose programming language. It is often used to build web applications, and seeing exploding growth due its use in data science, machine learning, cybersecurity, and dev ops.

Javascript: Often called ‘the language of the web,’ Javascript took #3 in Job Postings and #4 in Average Salary. Javascript is an indispensible language to know for writing web applications, as it works in the browser and on the server side.

Ruby: Highly-valued, Ruby holds #1 for Average Salary and #6 for Job Postings. Like Python, Ruby is an interpreted, multi-purpose language that is relatively easy to learn. Its popularity stems largely from its web development framework, Ruby on Rails, which is very powerful, widely used, and relatively easy to get up and running.

C++: Once a premier top-level programming language and now used primarily in gaming and high-performance applications, C++ stands at #3 in Average Salary and #4 in Job Postings.  The common and useful language C++ was designed for application and systems programming. Since its creation, it’s often been used for office applications, games, and advanced graphics. C++ is very fast and stable, but difficult to learn relative to the other languages in this list (except possibly C).

Java: Integral to large-scale legacy business applications and gaining new relevance through its adoption by Google for Android, Java maintains #1 in Job Postings and #6 in Average Salary. Java’s rankings were an exact flip of Ruby’s in each category. Originally developed by Oracle, Java is extremely popular because it can be used for mobile, web, and desktop app development, and more. Reasonably stable and fast, it is very popular at the enterprise level.

C#:  Similar to Java with Android, C# maintains a solid user base through its adoption in the Unity gaming engine, standing at #5 in Job Postings, and #8 in Average Salary. C# was specifically designed by Microsoft as a competitor to Java. Often used to build desktop apps and video games, as well as web apps, C# remains very popular in the enterprise. It runs on Microsoft’s .NET platform.

Swift/iOS: Swifts owes its rankings of #5 in Average Salary, and #7 in Job Postings to its dominance in the mobile market. Created by Apple, Swift is now often the default language for writing iOS apps (Objective C preceded it). If you want to write apps for the iPhone, look no further.

PHP: The language that powers WordPress, PHP is #8 in Job Postings, and #9 in Average Salary. PHP is a general-purpose scripting language used for the development of web applications. One of the earliest languages for web development (released in 1995), it remains widely popular today.

C: C is one of the oldest and most widely used programming languages in the world, and holds #7 in Average Salary, and #9 in Job Postings. It is used to program everything from operating systems to hardware. What makes this language so difficult to learn is in part why it is so powerful: a lot of concepts that are hidden to users in scripting languages like Python, Ruby and even Java are exposed in C, so that the programmer has more flexibility and complexity available.

[/et_pb_text][/et_pb_column][/et_pb_row][/et_pb_section][et_pb_section bb_built=”1″ fullwidth=”off” specialty=”off”][et_pb_row][et_pb_column type=”4_4″][et_pb_text _builder_version=”3.0.86″ background_layout=”light”]

What will be the most popular programming language in 2019?

It’s difficult to speculate how these programming languages will fare in the future because the supply of qualified applicants affects the number of open positions. However, as an article from The Economist recently noted, Python now has the largest Google search traffic of any programming language, recently passing Java. Java and Javascript come next.

If you’re also looking for more information on the usefulness of various programming languages, the TIOBE Index and Stack Overflow provide two of the most authoritative reports. Both reports consider industry demand as well as additional perspectives, and incorporate different approaches in determining the usefulness of programming languages.

If you’re a military veteran or military spouse interested in learning to code, you can apply for one of our cohorts now.

Code Platoon now training students in Python

At Code Platoon, our goal is to serve veterans and military spouses by helping them get a high-demand, achievable career in a short amount of time. In the modern job marketplace, software coding is that high demand position, and the coding boot camp format is the achievable, thorough, and fast way to teach it.

In 2019, we’re expanding that mission through our curriculum by teaching Python, a coding language that will meet our current goals and improve the benefits that our veterans and military spouses will gain from the training.

 

Python gives veterans more options in coding jobs

The main reason to add Python to our curriculum: Jobs.

Python is exploding in popularity, with the number of jobs available and the pay for those jobs among the highest of all programming languages.

While we at Code Platoon teach Ruby on Rails in 2018, which is excellent for web development, Python can be used for web development as well as artificial intelligence, data science, machine learning, scripting, automation, and cybersecurity.

This wider variety of applications allows our graduates to find the type of coding job that best fits them since there are more options with Python. It also increases the likelihood that all of our graduates will find a satisfying and gainful job in the field, as it’s important to both the employer and the employee that there is a solid match in specialization for both talent and enjoyment, not just in general skill.

Secondly, having a greater number of locations, companies, and available positions in Python means that graduates will have a higher chance of employment, more flexibility with locations, pay, and benefits, and improved opportunity for finding a perfect culture fit with employers.

On Indeed.com, as of July 2018, Python is the second most in-demand coding language for new positions, and this number has been consistently high and growing. And in contrast to Java, the most in-demand language, Python is exponentially easier to learn.

Python is easy to learn

Fortunately, Python was created in such a way that it is both versatile and understandable. Since we welcome veterans and military spouses of all skill levels to participate in our coding boot camps, and no prior coding experience is required, Python is the best way to continue meeting the needs of all our students.

Being able to learn Python easily not only decreases the learning curve to become an effective coder, but it also increases confidence and competence at an early level to keep motivation and satisfaction high. There’s a lot to be said for the value of Python for its earning potential and versatility, but it’s also helpful to remember that the psychological component of mastering a skill and choosing a career plays a huge part in how well you do, whether you choose to stick with it, and your quality of life in the job!

Python is valuable to learn now and in the future

While Python will definitely help you land a coding career today, we want to think ahead to which languages will still be valuable and in demand in the future. After all, setting up our veterans and military spouses for short-term success is priority, but we won’t pass up the chance to go beyond that scope and look ahead for their interests.

With fields like AI, cybersecurity, and data science expanding rapidly, the demand for Python will only grow. With our program adapting on the cutting edge alongside the industry, our graduates will have a leg up on the direction of coding jobs and potentially find better long-term job security.

And regardless of whether Python remains the industry standard for so many types of coding jobs, it is the perfect foundation for a lifetime of of software development. Python is becoming widely adopted as the introductory language for computer science programs, so you can continue to build your skills and take on new coding languages in the professional or educational environment after graduating from Code Platoon. Learning Python doesn’t corner coders; it gives them room to grow and adapt.

We at Code Platoon remain committed to being groundbreaking and forward thinking, and our students will always be armed with the latest and greatest technology skills. If you’d like to join one of our cohorts to learn Python, apply now!

Code Platoon Week One – Getting the right tools and building a foundation

At Code Platoon, students do more than just learn about coding; we set them up from the very first week with practical steps for real workplace success. Sometimes this means going through real-life processes like tool preparation or developing work ethic and teamwork.

Preparing to start coding

Like a chef getting their first set of knives or a carpenter gathering their tools, web developers need to set up their machines to aid them in creating software. Code Platoon students start off by learning how to turn their computers into fully functioning development machines. We work on getting comfortable navigating through the computer’s file structure in the command line and setting up an IDE (interactive development environment) where we’ll write and test our code.

Students also learn how to control the versioning of their software with Git and Github and we really hammer in the fundamentals of programming and ensure that students have fluency with multiple languages.

Problem solving and multiple languages

We stress the importance of developing strong problem solving skills early on. Our first week is dedicated to algorithmic thinking. Students practice using their new tools while they work to solve 6-10 algorithms a day. These algorithms are small problems that push students into the mindset of an engineer pretty quickly. Students will learn how to bring a solution from concept to implementation, practicing professional workflow and sharpening their bug fixing skills along the way.

Because successful developers are polyglots, meaning that they know many languages, Code Platoon teaches Python and Javascript simultaneously from day one. Learning the differences and similarities between these two popular languages also helps solidify common programming concepts, which make learning a third or fourth language that much easier.

Teamwork is key to coding

Learning to program is challenging. Students can expect a lot of long nights and not a lot of sleep, but they can also expect to develop a deep camaraderie with their fellow veterans and military spouses.

Learning to work on a team is essential to success in the technology industry. That’s why Code Platoon students practice pair programming. Two students work together on a problem at a single workstation. This forces students to communicate their solutions to problems clearly and allows them to accelerate their learning by exposing them to ideas and ways of approaching challenges they may not have thought of on their own.

By the end of the first week our students are more confident working with their computers and have a deeper understanding of the basic programming building blocks they’ll need to craft high quality, fully functioning applications in the coming weeks.

Follow our journey to Week Two, when students learn about the importance of code reuse, collaboration, and proactive testing.

Code Platoon Web Development Bootcamp Approved for GI Bill Eligibility

Chicago, IL, February 26, 2018 – Code Platoon, a Chicago-based web development bootcamp for U.S. veterans and military spouses, has been approved for GI Bill eligibility by the Department of Veterans Affairs. This means eligible veterans and military spouses enrolled in the immersive, 14-week program will be able to use GI Bill education benefits to fund their tuition, housing and other associated costs.

Code Platoon is the first of its kind to reach this milestone in the state of Illinois, according to the bootcamp’s Executive Director Rod Levy.

“We are extremely proud to be the first coding bootcamp to be GI Bill approved by the VA in Illinois, and the only one to focus exclusively on veterans,” said Levy. “Code Platoon has always focused on providing veterans a top tier educational experience at an affordable price. We hope that the GI Bill will allow even more veterans to access our training and internships.”

Since its inception in 2016, Code Platoon has offered student’s scholarships of up to $10,500. Students using the GI Bill may now be able to cover the full cost of tuition depending on their level of benefits.

Code Platoon’s program is strictly for the veteran community and focuses on providing a supportive learning environment, coupled with industry-supported internships, to maximize the likelihood of successfully transitioning to a new career as a software developer.

“GI Bill approval will help us grow our class sizes and allow more veterans to become software development professionals,” said Alicia Boddy, Code Platoon’s development director. “This seal of approval from the U.S. Department of Veteran Affairs and the Illinois Department of Veteran Affairs will show our current funding partners that we are continuing to cement ourselves as the leader in software development education for veterans.”

The nonprofit has received generous financial support through grants and sponsorships from major corporations, including Amazon, Motorola and Boeing. GI Bill approval could help Code Platoon and its supporters further their quest to enhance the lives of U.S. veterans and military spouses.    

For our answers to frequently asked questions on the GI bill, click here.

Code Platoon & Deloitte Team Up to Present: “Code Camp: Make Tech Your Next Step”

If you are a veteran or military spouse who is interested in the exploding field of software development, Deloitte and Code Platoon have teamed up to offer a free, hands-on seminar designed just for you.

“Code Camp: Make Tech Your Next Step” features the team at Deloitte, a Top Four professional-services firm with more than 250,000 employees worldwide. Deloitte embraces a holistic approach when supporting veterans and military spouses, focusing on physical health and recovery, education, and employment.

No experience is required to attend the half-day event, which will begin at 11 a.m. Friday, Feb. 23, at Deloitte’s Chicago headquarters at 111 S. Wacker.

Jon Young, Code Platoon’s lead instructor, has put together an afternoon’s curriculum that will walk students through the fundamentals of coding as well as explore cutting-edge concepts such as cloud computing and the popular Ruby language.

The event also includes lunch, followed by ample time to ask questions of the panel members, who will share their experiences and offer advice on a successful career in technology.

The hands-on portion of the event will also position participants to apply for the upcoming cohort at Code Platoon, a nonprofit programming “bootcamp” that helps veterans and military spouses transition into the civilian workforce via 14 weeks of technical training followed by career placement. Significant tuition assistance is available, and veterans or military spouses who successfully complete the program are eligible for internship with sponsor companies.

“I decided to teach about AWS and Cloud9 because cloud computing is the direction that the industry is going toward,” Young said. “I chose Ruby because it’s an extremely high-level language that reads and writes a lot like regular English.”

Also on the agenda are tools that move developers from working on their own computer to collaborating on the Internet.

“I want to get them all set up on their coding skills, including Github and scripting basic algorithms that can get them past the initial phase of interviews,” Young said. “I’ll be teaching them an algorithm that 99 percent of developer candidates cannot solve, a fun problem called ‘fizzbuzz’ that can be tackled a number of ways.”

Rod Levy, Code Platoon’s founder, said he is eager to talk with participants about the bootcamp’s curriculum, success rates and unparalleled teacher-student ratio.

“We’re also pleased that the seminar’s participants will have access to experienced developers’ perspectives and Deloitte’s proven expertise in serving veterans and military spouses,” Levy said. “Their extensive hiring efforts produce great results, but they also are leading the way with the support they offer on the job.”

While the 5-hour event is free, only 20 seats are available. To sign up, visit this link, or call Rod Levy at 312-767-7673

Deja Baker’s Coding Journey Leads the Way for Women and Veterans Alike

Despite the fact that the tech community is growing faster than ever, there are still two demographics that are often overlooked – women and veterans. However, the dearth of representation from both communities is quickly changing, especially when you have individuals like Deja Baker spearheading the effort. Baker, who enlisted in the Navy as an Analyst, eventually pursued her interest in technology as a Computer Science major at the Naval Academy.

Seeking to further her education in the coding industry, Baker applied for and received Code Platoon’s Women In Technology Scholarship, which fully covers her tuition, and is scheduled to attend the all-veteran coding bootcamp this fall. While there were a number of other bootcamps to choose from, Code Platoon was always the first choice for Baker.

“One reason why I chose to apply for Code Platoon is because its exclusively for veterans,” Baker said. “I feel that being around people from a similar background, who are working towards the same goals, will prove more beneficial to the process.”

In addition to providing a sense of community, Baker believes that an all-veteran bootcamp will likely be composed of the most highly motivated and disciplined students in the coding industry.

“Veterans have worked in a variety of different roles all over the world, and because of that, veterans have a wide array of experiences that allow them to adapt quickly when engaging in new projects,” Baker said. “I feel that a lot of veterans have the drive and the aptitude to work towards a role in tech.”

Although many of today’s veterans often have skillsets that translate well to coding and programming few choose to pursue a career path in the tech industry. Baker says that veterans who have given thought to a career in coding should, at the very least, give it a try.

“I know a lot of people that are interested in coding who are too worried to see what it’s all about, but there are abundant resources online to just dabble in it and see if coding is for you.”

It’s a sentiment that’s shared by leading tech giants such as Google, IBM, and Intel, all of whom have taken measures to help veterans gain a footing in the tech sector. And because there are plenty of opportunities waiting for veterans with strong programming skills, Baker says she’s eager to begin her first day at Code Platoon.

“I’m excited to have this opportunity to study and work towards becoming a developer; I’m looking forward to working in teams in a highly collaborative environment and to be challenged while solving difficult problems.”

3 Tracks for Veterans and Military Spouses Interested in Becoming Software Developers

For people interested in becoming software developers, it may seem as if there are infinite ways to embark on that path. Which is great, because having so many options means anyone can learn to code, but this is also bad, because you can get seriously bogged down trying to figure out how to get there.

To simplify the choices, let’s take a look at the three major forks you can take, and how to navigate them. They vary in investment (think time AND money), expediency and outcome. (The goal here is to narrow your focus, not provide an overwhelming list of possibilities, so this is hardly an exhaustive list of options.)

Path #1: Traditional: Get a degree in Computer Science

This is the most traditional way to enter the world of software development, but it is also expensive and takes the most time. Bachelor’s degrees take four years, a master’s degree typically takes two. Fortunately, many veterans and military spouses have GI Bill funds that they can use at universities. If you go this route you may as well use the top ten programs as a starting point. This is most tried-and-true way to enter software development, and no hiring manager will thumb his or her nose at your background (although there is by no means a guarantee of a job). Moreover, if you do attend a prestigious program, you will also enjoy the benefits of having access to the alumni network, not to mention a thorough knowledge of, well, computer science that can take you in a lot of directions.

Despite its advantages, a CS degree can be a daunting and expensive undertaking. For people who are changing careers or with families to support, being out of the workforce for several years might not be practical. And these days companies often fault CS graduates for not having much practical experience.

Bonus tip — possibly the best deal on a CS degree is offered online by Georgia Tech, which happens to be a Top10 program, for $7,000.


Path #2: Nontraditional: Coding Bootcamp

The premise of ‘coding bootcamps’ is to take a deeply interested beginner and, in a matter of months, teach all of the practical skills to qualify as a junior software developer.  These schools are named bootcamps, because many follow an ‘immersive’ philosophy, which requires students to work 60- to 100-hour weeks. The cost, too, is usually under $20,000, and pales in comparison to the cost of traditional higher education, The bootcamp model is reasonably new, but has exploded in popularity as a way for career changers to learn the skills to fill the growing need for software developers. Today dozens (hundreds?) of coding bootcamps, in all shapes and sizes, dot the country, with some of the schools offered wholly online.

Some factors to consider while comparing these schools: technology stack, location, length, cost,  reported outcomes and curriculum. Course Report is a good starting point for this research. One simple guidepost: Look for coding boot camps that offer at least 1,000 hours of instruction/coding/project time.

For veterans and military spouses, there are a few additional points to consider. Some coding bootcamps are eligible to accept the GI Bill. Operation Code, a nonprofit organization whose mission is to help the military community learn software development and break into the tech industry, keeps a list of these coding bootcamps. Code Platoon (disclaimer, I’m the executive director), is a Chicago-based non-profit coding bootcamp exclusively for veterans and military spouses that offers its students $10,500 scholarships.

Other reasons to go to a coding bootcamp instead of college? The slide in this article says it all. Much less time spent out of the workforce, and, for the better bootcamps, pretty good employment outcomes. You’ll see a greater emphasis on building products, rather than theory (not unlike learning to be a carpenter versus studying to be an architect). The fast pace can’t accommodate the rigorous study of algorithms and problem solving that a CS program can, of course, and some employers are still skeptical about hiring bootcamp grads.  

Bonus tip — probably the best deal in coding bootcamps is online Free Code Camp. It’s rigorous. It’s long. It’s well designed. It’s FREE! Get through that and perhaps supplement with this algorithms class.

Path #3: Self-paced online learning

If you want to explore your options, to try as many different things as possible, and have the time, you can try to learn on your own. There are many, many ways to do this.

If you want to pursue this path, please:

  • Don’t stress about which language/framework is hot. Start with JavaScript (widely used), although Ruby on Rails (which we teach) and Python are great too. Nothing wrong with picking other big ones like C# or Java — they just have a longer learning curve.
  • Get on an online guide. Bento.io and The Odin Project are two examples of free sites that will guide you, step by curated step, down the road to learning web development. They gather lots of different resources to help you learn and remove the guesswork as to what you should learn, in what order, and from where.

Of course, to just get a feel for the business or explore its many facets, you’ll find a boggling array of resources.  Codewars.com, Hacker Rank and Codingbat have lots of free programming challenges, as well as some guidance on how to go through them. Alternatively, you could pick a project that you are interested in, either something you want to build (a website, app, etc.) or that someone else has suggested. And then go build it!

Additional resources

  • Operation Code — for all kinds of feedback for a veteran who wants to enter software development — join the Slack channel
  • Not necessarily free, but good resources include: TeamTreehouse, Codeschool, Udemy, Upcase, Flatiron, Thinkful, Coderbyte, Learn Code the Hard Way, https://automatetheboringstuff.com/