loading...

I am a programming coach/trainer, Ask Me Anything!

jorgecc profile image Jorge Castro ・3 min read

I was a programmer, I was a project in chief (the guy that hired developers), and now I am training new guys. So I worked in the whole pipeline. :-3

Q/A

  • Q: I have 12-17 years, Can I study programming?.
    A: Yes, it is the ideal age to start programming. Think about cheating. It is cheating. Let's say life is an RPG game. Everybody starts at level 1 (18 years). The university/school could prepare you to the level 5-10 at most. If you started programming when you are a teen, then you could achieve a level 15-30 (18 years) at ease.

  • Q: Who could be a programmer?
    A: It's not a matter if you have a high IQ high or not, a programmer needs to think as a programmer. If you are a problem solving and/or disciplined, then you are ready to go. However, if you are an untidy person or you don't like to solve problems, then maybe programming is not for you. And trust me, programming is not for everybody, it's not capability but some people LOVE to program, while other people hate it. Do you want to work during the next 2 decades in something that you hate?.

  • Q: I studied X and I have 28-35 years, can I study programming?.
    A: Yes, it is hard but it is possible. In fact, most of my students are in this range and practically everybody is landed a job. It also depends on the CV and the candidate. Of course, you double-work if you want to compete with your perps, it's hard but not impossible.

  • Q: I have +40 years, can I study programming?.
    A: Nope!. You can but it is really hard (but not impossible, I am witness too), to land job as a junior programmer with more than 40 years. It's a better shot to aim at some management role, with a better salary and more responsibilities, it feels more natural.

  • Q: Which language?.
    A: If you want to land a job then JAVA.

    A: If you want to work academically, then Python.

    A: If you want to be a freelance then PHP.

  • Q: I want to work as a programmer, what I need it?

    A: Degree, expertise (expertise and experience) and salary (the low then the better), pick at least two.

    A: Example: "I am cheap and I have a degree" = OK

    A: Example: "I have experience and I am cheap but I don't have a degree" = OK

    A: Example: "I have a degree and I have experience but I'm not cheap" = OK

    A: Example: "I have a degree and I am expensive and without experience" = NOT OK, we will call you back. (I saw it so many times).

    A: Of course, if you play it well, then sooner or later, you can have all of them.

  • Q: What is catch-22?
    A: Something that you could defeat :-3

  • Q: How to deal with the interview?.
    A: If it is the HR interview, then it's simple: LIE!. First, you love everybody, including kitties, puppies, flowers light colors and you really love to work overtime without compensation! And of course, you have the perk of a leader (even if the job is to fill the role of a programmer jr.), think about Steve Jobs minus the salary and the arrogance.

    https://i.pinimg.com/originals/42/7d/96/427d966429fe5817448703ab52e65b04.gif HRs are evil btw.

A: If it is the technical interview, then you mustn't lie but tell what you know. It's simple because there are no detours. However, there is a little secret: "just keep talking and nobody explodes" :-3. For example: "I don't know" is bad because you are not solving the problem but you are saying "I give it up!", while "I don't but I could try/learn/...." it's good because at least you are trying to solve it, so you mustn't give it up and you must keep talking, even if you are saying something silly.

https://cdn-images-1.medium.com/max/1600/1*z4IPbjvqlaAKQf3-bDCBXA.jpeg Whiteboard interview kills the cheaters.

A: It's OK if you get nervous.

Discussion

pic
Editor guide
Collapse
sally profile image
Sally

I love programming but I loathe arbitrary problem-solving - Sudoku, logic puzzles, cryptic crosswords, all that stuff. I suppose it's because I really don't see the point at all and get no sense of reward, but during programming, the rewards are frequent.

I see "enjoys puzzles and logic problems" often in articles about people who may like programming, and I disagree with it. If you want to know if you enjoy programming, just try programming.

I have seen students graduate coding bootcamps over the age of 40. Some had prior experience, some had not. What matters is attitude.

Language recommendations will depend on the local industry. If someone wanted to work in my city fast I'd say learn MERN stack and start with vanilla JS. In another city, there is a stronger LAMP stack hub, so I'd say learn PHP instead. It is not universal.

I also disagree you need a degree, expertise and a low salary. Again this will depend on your country/city/local tech culture. Cities with coding bootcamps and companies happy to hire from them do not require the degree or the expertise, and the salaries aren't bad either. You don't need a degree. You do need some experience, training and a portfolio. You deserve a reasonable salary for your area - if the average for a junior is £25k, don't take a role for £18k.

Collapse
jorgecc profile image
Jorge Castro Ask Me Anything

Language recommendations will depend on the local industryLanguage recommendations will depend on the local industry

My experience as a software engineer (I don't want to mention names), 3 banks (2 Internationals, one in the top ten globally). 3 global companies (1 if we mentioned insurance that used Snoopy), 2 ISP, 5 Mining companies, 50 agroindustries, 2 pharmacies. I think I have worked in 3 local companies (companies that works for the local/city market). And for education, I have achieved +200 companies (I ran a b2b company). However, I think I am missing some companies.

So my specialty is not the local market while I feel cozy working under SOX.

Cities with coding bootcamps and companies happy to hire from them do not require the degree or the expertise, and the salaries aren't bad either.

But they aren't great either. Bootcamp is a mixed bag. Usually, you get what you paid for. Some bootcamps are great but others are a waste of time and resource. The main problem with IT education it's the costs of the teacher. It's easy to find a programmer with 3-5 years of expertise doing classes and its far from ideal (The blind leading the blind).

Collapse
sally profile image
Sally

I agree the model can be flawed. One thing I have wondered is if the cycle of, say, a React bootcamp whose students are then hired by local companies to make React-based websites is a bubble, with the same students and roles and companies simply circling around one another, but with little possibility of ever breaking out of the cycle into, as you say, more strenuous engineering or the top levels of development work. It would take an exceptional student to continue their path of self-learning into such areas. In turn, it means that advice for the wider industry - Java, for example, or other OOP-based languages - is less relevant to someone in a small Vue/React/PHP hub where all the roles are Wordpress or single page web apps.

Collapse
tomasforsman profile image
Tomas Forsman

About being 40+ junior; I've just started an ask me anything about getting back into tech after 20 years away as a middle aged junior.

Collapse
vallerydelexy profile image
vallerydelexy

hi, i just start learning javascript a month ago. and just have get the hang of it
i wonder is it possible to build a full-fledged online shop (product catalog, cart, shipping options, shipping tracking and other stuff)
with only html, css, and javascript

will it be maintainable?

Collapse
jorgecc profile image
Jorge Castro Ask Me Anything

JavaScript is hard. I don't know why people pick it as their first language.

For example, let's say you learn Javascript, then you must learn ES6 too and over a framework (because you can't build anything using vanilla javascript).

It is the hello world on Node.js

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

And it is the same using PHP


echo "Hello World";

Python is also way more friendly and you could get more bang for your bucks (I prefer PHP because it's aimed to web).

If you want to pick JavaScript then you pick one of this next one:

  • React
  • Angular
  • Vue

Everything else is dead btw (example Express js)

Collapse
niorad profile image
Antonio Radovcic

Is this parody?

Collapse
jorgecc profile image
Jorge Castro Ask Me Anything

You are not helping, so shoo shoo go away. :-P

Collapse
antonrich profile image
Anton

Q: I have 12-17 years, Can I study programming?
A little typo in the first question.

Collapse
jorgecc profile image
Jorge Castro Ask Me Anything

Because English is not my mother tongue and I don't really need to write on English but for a hobby. :-3

Collapse
antonrich profile image
Anton

English is not my native language as well : )))

Collapse
budyk profile image
Budy

I see a lot of new comers skip the Fundamental and use frameworks instead, how do you see this?

Collapse
jorgecc profile image
Jorge Castro Ask Me Anything

Most of the newcomers are clueless about so many things are they are really scared to programming because they don't get or understand what they are doing. And nobody (at work) are teaching them about it, especially if the team is also clueless about what they are doing (and the management don't care). However, they survive by copy & paste code or modifying code.

In general, most programmers don't like their job.

A programmer must learn the base, but the base it's different to read all the specifications or to teach an overly complex algorithm. For example, it's stupid to learn how to calculate the Fibonacci number, it's hard and pointless even for experts. However, it's a classic example for a novice. Why? beat me!

For example, the base of Java: (but it also applies to c# and PHP).


Class object=new Class(); // The variable "object" points to the space of memory
int variable=20; // the variable contains the value 20.

Both are variable but they work completely different (as segments of memory).