Search by author name or post title:

  or  
0 Likes | 0 Comments
15 May 2019

THE TECH ACADEMY PODCAST: Ep. 7 Erik Gross

Posted By: The Tech Academy

This week on The Tech Academy Podcast we have a special episode for all our listeners! Over the past few episodes you've gotten to know a little bit about our host, Erik Gross. We've learned about his experience in the US Navy, how that cultivated his interest in technology, and about his upbringing in Northern California. This week, with the help of Tech Academy Expansion Director Brett Caudle, we're switching things up and getting to know even more about Erik. As always, stay tuned for the end of the episode for Jack's Helpful Tips! This week Jack shares some insight specifically for professional (or aspiring) developers on the importance of communication. If you enjoyed this episode, subscribe to The Tech Academy Podcast on iTunes!

0 Likes | 0 Comments
15 May 2019

Tech Talk: Dan Linn on Overcoming Imposter Syndrome

Have you ever stopped yourself from taking on a new opportunity because you doubted your own abilities and accomplishments? Or because you questioned whether you really "deserved" the chance you were being given? In this Tech Talk our speaker Dan Linn talks about Imposter Syndrome and how to overcome this self-doubt, specifically as it pertains to the work place. Imposter Syndrome is a pattern of thought where individuals doubt their skills and accomplishments, and often worry about being "exposed" as a fraud. This is a phenomena that transcends the tech world, and can be found in most professionals today. Dan Linn is the President of Hello World Devs. Hello World helps companies create application solutions with their own internal teams, or as supplemental or permanent workers on outside projects.

tech academy blog image
0 Likes | 0 Comments
21 May 2019

The Difference Between Functions and Methods

Posted By: The Tech Academy

By: Erik D. Gross, Co-Founder of The Tech Academy




There is a set of terms that can be confusing in learning computer programming. These terms all relate to a fundamental element of all computer programs: sub programs.

A sub program in the most basic sense is this: a set of computer instructions, separate from the main program, that can be executed on demand by the main program.

Sub programs were an early development in computer programming, and their creation was driven by one basic factor: Programmers quickly found that they were often having a program do certain exact things many times as the program was being executed. This meant that the exact same set of programming instructions had to be entered in the computer program every time that thing was needed.

This activity had two fundamental weaknesses. First, the process of typing the same exact instructions over and over again was time-consuming and error-prone for programmers.

Second, if a programmer wanted to make a change to how that thing was done, they had to find every place in the program where they had entered the duplicate instructions and make the change in every one. In other words, these commonly-used chunks of computer code were hard to create and maintain.

The answer to this problem was a sub program. Here, the programmers would type in the set of instructions that performed the needed action, and give that set of instructions a unique name. This set of instructions was called a sub program, and was not considered part of the main program that the computer was going to execute. Instead, the main program was modified so that it would just execute that sub program whenever that particular action was needed.

This is indeed a basic concept. In the early years of computer programming languages, where programmers worked with various low-level languages barely a step removed from machine language, the actual implementation of the concept stayed quite simple and very much as described above. However, as higher-level programming languages were developed, this concept began to develop variations and nuances. The central concept of pre-made sets of code that can be used as needed has remained, but the designers of the various languages have often implemented the concept in different ways, depending on the design objectives of the language.

Because of this, you will find many related terms in this area. Some of the terms in use are:

  • Functions
  • Methods
  • Routines
  • Subroutines
  • Subprograms
  • Procedures

If you try to clear up the definitions of these various terms, you can quickly become confused. Some sources will tell you that they are all basically the same thing. Other sources will articulate specific differences and similarities between two or more of the terms. It can be difficult to nail down.

This is because of a few factors. First, some programming languages use the same term to mean slightly different things. Second, some programming languages are designed to implement this concept in two related ways, so the language designers needed two different terms.

What this means in terms of your study of various computer programming languages is that you’ll often have to research what a specific term means in that language, ignoring source data that’s related to other languages.

This concept is best illustrated through an example. We’ll use the popular programming language JavaScript to do this.

JavaScript uses two related terms: function and method. They are very similar, in that they both involve the creation of a pre-made set of instructions that can be made use of by other program elements. They do have some subtle but important differences, however. Let’s explore them.

First, some basic definitions - and remember, these definitions are for the use of these terms in JavaScript.

We’ll start with the definition for the term “object”, as a clear understanding of this is needed in order to understand the other two terms.

In JavaScript, an object is a type of data that represents a thing through its various properties (characteristics - what it looks like) and behavior (what it can do).

An example of an object would be a “vehicle”. Thinking of this common real-world thing as an “object” that will be stored in computer memory and kept track of as a program is executed, we can think of various properties and behavior for it. Under properties, we could have things like “chassis type”, “engine type”, “number of doors”, “speed”, etc. Under behavior, we could have things like “accelerate”, “deccelerate”, “turn right”, “turn left”, etc.

An example of creating an object in JavaScript might look like this:

var student = {

firstName: “Jane”,

lastName: “Smith”,

age: 28,

gradeAverage: 3.5

};

In this example, we have only specified properties for the “student” object, and not specified any behavior. We will look at that in a moment.

So let’s look at how this applies to methods and functions in JavaScript.

Function: In JavaScript, this is simply a block of code designed to perform a particular task. This block of code gets executed when another piece of code calls it.

An example could look like this:

function add(num1, num2) {

return num1 + num2;

}

Other JavaScript code elements could call this “add” function by specifying its name and passing it two numbers. That could look like this:

var sum = add(5, 7);

Here, the code would create the variable called “sum”, call the function “add” and pass it the two numbers 5 and 7, and take the result (12) and assign that value to the variable “sum”.

Method: In JavaScript, a method is a set of code associated with an object that is designed to change the state of that object when it executes. In other words, the method is performed on the object.

You create these methods when you create the object. Let’s look at how we might do that with our previous example of a “student” object:

var student = {

firstName: “Jane”,

lastName: “Smith”,

age: 28,

gradeAverage: function(avg) {

return avg;

}

};

Here, we aren’t setting the property “gradeAverage” to a fixed number of 3.5. Instead, we are setting that property to the value returned by a set of code. Specifically, that code will take in a number (the variable “avg”) and set the value of the “gradeAverage” property to the value of that variable.

Executing that code could look like this:

student.gradeAverage(3.4);

Here, we are telling the computer to make use of the object called “student”. Specifically, the computer is to run the function “gradeAverage” that is defined in the “student” object. Since that function needs an input (the variable “avg”), we give it the number 3.4.

So here’s the distinction: In this specific situation, that function “gradeAverage” is called a method. Yes, it’s confusing - until you recall that in JavaScript, a method is a set of code, associated with an object, that is performed on the object itself. So we have the confusing situation of a property of an object that we are defining using a function - but we’re calling the action performed by the function a method.

In actual practice, there is very little danger in using these terms interchangeably - and you’ll often find technical sources will do so. But occasionally you’ll find a source that uses the terms in their strictest sense.

The lessons here are these: First, there are many varied terms in use for the concept of “a block of code that can be executed on demand by other code”. Second, in order to clarify any potential difference between these various terms, you’ll need to investigate their exact meaning in the language you’re concerned with. Any attempt to give them a blanket, universal meaning ignores the subtleties described here.






About the author: Erik has been working in technology since the 1980s. As a nuclear reactor operator and teacher in the Navy, he mastered a multitude of technologies. His years of experience as a senior-level software developer were key to the development of The Tech Academy’s boot camps.

As the other Co-Founder of The Tech Academy, Erik assists in curriculum development and oversight.



The Tech Academy is a technology school that trains students in computer programming and web development. They are the proud recipient of SwitchUp.Org’s and CourseReport.Com’s Best Coding Boot Camp award and were named the “World’s Greatest Code School” by How2Media.







The Tech Academy offers a wide range of services including:

  • Coding boot camps
  • Customized training classes for companies and groups
  • Advanced developer training
  • Software development
  • Staffing
And more…





Visit learncodinganywhere.com to find out more.

0 Likes | 0 Comments
23 May 2019

The Tech Academy Podcast: Ep. 9 Brett Tramposh & Angela Enloe

Posted By: The Tech Academy

We have another special episode of The Tech Academy Podcast featuring guest host Hannah Patterson! This week Hannah sits down with Angela Enloe, IT Director for XPL Logistics, and Brett Tramposh, Dev Team Manager for a fleet management software company. We hear about the pair's experience working in QA, meet-ups in the Tech Industry, and much more! They also share some great career advice that anyone can use in any industry. As always, Jack Stanley closes our episode out with an important tip about the importance of work-life balance and how to work towards it.

tech academy blog image
1 Likes | 0 Comments
28 May 2019

Salt Lake City Utah’s Newest Coding Boot Camp

Posted By: The Tech Academy

By: Jack C. Stanley, Co-Founder of The Tech Academy


Did you know that Forbes named Salt Lake City, Utah as the number one city poised to become tomorrow’s tech mecca?

In fact, there’s even a section of Utah referred to as Silicon Slopes due to its high concentration of tech companies such as Adobe (major software company), SanDisk (computer memory products company), EA Sports (sports video games company), eBay (e-commerce company) and Intel (technology hardware company). Silicon Slopes is Utah’s Silicon Valley.

Utah tech job growth has increased at twice the speed of the national average. And so, choosing it as the location of our next Tech Academy was a given.

The Tech Academy Utah is enrolling students in its coding boot camps now!

Our boot camps can be completed online from anywhere in the world, but we’ve noticed that about half of all students prefer an in-person training experience (as opposed to fully online study). In the interest of making our award-winning technology training widely available, we are opening campuses across the United States.

When looking for where to open new Tech Academies, we search for cities that aren’t already saturated with coding boot camps. We believe that everyone should be able to attend a code school, and so we’re placing them in a wide array of cities that have strong tech demand.

A lot goes into the process. In no particular order, here are some of the steps:

  1. Filing all needed legal documents, submitting a school license application, etc.

  2. Finding the perfect campus. We look for office space that is large enough to comfortably fit students, and as the saying goes: location, location, location. We tend to stay out of downtown to ensure students have a quiet study environment and (even better) free parking.

  3. Hiring and training all needed employees. We have training content for every position. Our Instructors are graduates of our boot camps, who have completed about 6 weeks of intensive Instructor training. This includes study and practicing how to assist students, and running an internship (we call it a Live Project).

  4. We renovate each campus prior to opening and furnish it with brand-new furniture and supplies. We don’t reuse anything from previous tenants because we want to ensure our students have the exact furnishings they need.

  5. Each campus has its own marketing campaign to inform students of the arrival of the next Tech Academy.

This is a very high-level overview but we have about ten employees assisting with the process of opening new schools. I get to find the new campuses, which is a lot of fun!

Our Utah campus will offer all of the boot camps available at every Tech Academy campus. Everything available at our headquarters in Portland will be available at The Tech Academy Utah. All Tech Academy students will receive the same content, services and help.

Having personally spent some time in Salt Lake City, I love the city.

It’s beautiful and surrounded with mountain ranges which never lose their majesty – each day it was like I was seeing them for the first time. The people of the city nestled in between the mountains were kind and well-mannered. I found them very welcoming.

We are so excited to contribute to the technological boom in Utah through training up talent for this wonderful state.




About the author: With years of executive and managerial experience, Jack C. Stanley has overseen The Tech Academy since its inception. He owns and operates several successful companies.

His background in teaching and curriculum development contributed greatly to the creation of The Tech Academy’s boot camps. As the Co-Founder and chairman of the school’s Board of Directors, he supervises the day-to-day activities and long-term planning for the school.

The Tech Academy is a technology school that trains students in computer programming and web development. They are the proud recipient of SwitchUp.Org’s and CourseReport.Com’s Best Coding Boot Camp award and were named the “World’s Greatest Code School” by How2Media.




The Tech Academy offers a wide range of services including:

  • Coding boot camps
  • Customized training classes for companies and groups
  • Advanced developer training
  • Software development
  • Staffing
And more…





Visit learncodinganywhere.com to find out more.


Page 2 of 13