Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Gin_Rummy
Aug 4, 2007

wilderthanmild posted:

You don't really have a real offer yet imo, but they are basically trying to figure out how little they can offer you because they do want to hire you.

Listen to whatever the negotiation thread says, but do not low-ball yourself. Especially not based on some nebulous region thing. Some companies pay differently by region. Some don't. But don't talk yourself into some weird "I like in X so Y is just too much!" self fulfilling prophecy.

Yeah, I think the worst part about this is that they say it is an offer but it doesn't really feel like one. I think they are just trying to place pressure and low-ball me, as is expected from massive mega corps, so I'm not surprised at all. The recruiter requested a starting point on TC from me, but kept referring to an offer that would come within two to three days, so I am hoping I can just sort of sit on it and get a starting point offer from them if I just wait it out.

Adbot
ADBOT LOVES YOU

Harriet Carker
Jun 2, 2009

Whatever you do, NEVER give a number first. I’ve literally seen firsthand someone getting 40k under what a company was willing to offer them because they didn’t know their worth.

Make them give you a number. If they absolutely put you in a corner, take a figure you’d be ecstatic about getting, add 25%, and tell them that. Whatever number you give is now the absolute maximum during negotiations and it can only go down from there.

Vincent Valentine
Feb 28, 2006

Murdertime

Speaking of offers.

I gave a salary range to a recruiter, and my recruiter said it sounded fine. They were going with my asking price to something like seven different companies, and I wasn't to give my asking price to any of them so that the recruiter could negotiate on my behalf(though they said any offer I got would never be below my asking rate). The offer I got was 25k over my asking rate, and when I asked my recruiter about it she said "Oh yeah I just asked for more and they said sure, no problem."

Thing is, my range was already well over average(edit: for context, I was aiming for 75th percentile). I know, the rule is never say a number and let them tell you first and then negotiate from there. But that's a pretty big loving jump over average and I have no idea how they got it. Is this something normal for recruiters? I'm sure it's easier for them to negotiate when they place so many people since they get a ton of data, so I'm wondering if this is just some aspect of jobhunting I've been sleeping on all this time.

Vincent Valentine fucked around with this message at 01:11 on Apr 22, 2022

asur
Dec 28, 2012
I would not trust a recruiter to negotiate for you. It sounds like you may have found a good one, but in general incentives are not aligned. Same idea as real estate agents, the difference in recruiter pay for high salary requirements, negotiation, etc is minimal and outweighed by just closing the deal.

teen phone cutie
Jun 18, 2012

last year i rewrote something awful from scratch because i hate myself

Vincent Valentine posted:

Speaking of offers.

I gave a salary range to a recruiter, and my recruiter said it sounded fine. They were going with my asking price to something like seven different companies, and I wasn't to give my asking price to any of them so that the recruiter could negotiate on my behalf(though they said any offer I got would never be below my asking rate). The offer I got was 25k over my asking rate, and when I asked my recruiter about it she said "Oh yeah I just asked for more and they said sure, no problem."

Thing is, my range was already well over average(edit: for context, I was aiming for 75th percentile). I know, the rule is never say a number and let them tell you first and then negotiate from there. But that's a pretty big loving jump over average and I have no idea how they got it. Is this something normal for recruiters? I'm sure it's easier for them to negotiate when they place so many people since they get a ton of data, so I'm wondering if this is just some aspect of jobhunting I've been sleeping on all this time.

my buddy also had good luck with a recruiter once like this. maybe some of them actually treat their clients like human beings :shrug:

Vincent Valentine
Feb 28, 2006

Murdertime

teen phone cutie posted:

my buddy also had good luck with a recruiter once like this. maybe some of them actually treat their clients like human beings :shrug:

Sort of. She told me she gets paid based on the rate I get an offer at. More for me means more for her, so we can't rule out the fact that she was operating entirely on her own self-interests. That being said, I am not particularly worried about someones motivations for giving me a ton of money.

Lockback
Sep 3, 2006

All days are nights to see till I see thee; and nights bright days when dreams do show me thee.
"never say a number" is generally good advice but it really isn't a commandment from god or anything. Look up "Anchoring", if you know the market rates, if you have a good batna, and you have a decent idea on what the other party can offer, anchoring can be really advantageous. However, most people who post on the internet looking for help on negotiating probably don't have that other information, so in that case not naming a number makes sense.

As always, people on the internet may give good advice for a general situation, but your specific case can very easily be different.

keep punching joe
Jan 22, 2006

Die Satan!
Ok going to need some advice here. Posted earlier about a potential secondment into a developer role, but to get the job I need to complete a short project. Project is to create a CRUD app using Node JS and MariaDB.

I've been through numerous tutorials on how to connect my database but keep running up against the same issue, in that I'm unable to get a connection established. As a sidenote, every guide I've been able to find is for MySQL/Node integration, so maybe that's causing the issue, but I thought that it was functionally the same as MariaDB.

As an example, I was running through this guide. And everything seems fine until I come to test the connection with Postman, it doesn't do anything just hangs.

code:
Running on...

OS: Manjaro Linux x86_64 
Host: MacBookPro8,1 1.0 
Kernel: 5.13.19-2-MANJARO 
CPU: Intel i5-2415M (4) @ 2.900GHz 
GPU: Intel 2nd Generation Core Proce 
Memory: 4620MiB / 7866MiB

This is the script I'm trying to run. I'm pulling my hair out because this is the same wall I hit every time, and I cant figure out what is going wrong. Running the GET request on postman to http://localhost:8000/learners just results in the program hanging.

Is it the script thats wrong? Or is it being blocked by my firewall or something?

code:

const mariadb = require("mariadb");
const express = require("express");
const bodyparser = require("body-parser");
var app = express();
// Configuring express server
app.use(bodyparser.json());

// MariaDB details
var mdbConnection = mariadb.createPool({
  host: "localhost",
  user: "root",
  password: "password",
  database: "learners",
  multipleStatements: true,
});

mdbConnection.getConnection((err) => {
  if (!err) console.log("Connection established");
  else console.log("Connection failed" + JSON.stringify(err, undefined, 2));
});

// Establish server connection
// PORT ENVIRONMENT VARIABLE
const port = process.env.PORT || 8000;
app.listen(port, () => console.log(`Listening on port ${port}..`));

// Creating GET router to fetch all the learner details
app.get("/learners", (req, res) => {
  mdbConnection.query("SELECT * FROM learnerdetails", (err, rows, fields) => {
    if (!err) res.send(rows);
    else console.log(err);
  });
});

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

keep punching joe posted:

Ok going to need some advice here. Posted earlier about a potential secondment into a developer role, but to get the job I need to complete a short project. Project is to create a CRUD app using Node JS and MariaDB.

I've been through numerous tutorials on how to connect my database but keep running up against the same issue, in that I'm unable to get a connection established. As a sidenote, every guide I've been able to find is for MySQL/Node integration, so maybe that's causing the issue, but I thought that it was functionally the same as MariaDB.

As an example, I was running through this guide. And everything seems fine until I come to test the connection with Postman, it doesn't do anything just hangs.

code:
Running on...

OS: Manjaro Linux x86_64 
Host: MacBookPro8,1 1.0 
Kernel: 5.13.19-2-MANJARO 
CPU: Intel i5-2415M (4) @ 2.900GHz 
GPU: Intel 2nd Generation Core Proce 
Memory: 4620MiB / 7866MiB

This is the script I'm trying to run. I'm pulling my hair out because this is the same wall I hit every time, and I cant figure out what is going wrong. Running the GET request on postman to http://localhost:8000/learners just results in the program hanging.

Is it the script thats wrong? Or is it being blocked by my firewall or something?

code:

const mariadb = require("mariadb");
const express = require("express");
const bodyparser = require("body-parser");
var app = express();
// Configuring express server
app.use(bodyparser.json());

// MariaDB details
var mdbConnection = mariadb.createPool({
  host: "localhost",
  user: "root",
  password: "password",
  database: "learners",
  multipleStatements: true,
});

mdbConnection.getConnection((err) => {
  if (!err) console.log("Connection established");
  else console.log("Connection failed" + JSON.stringify(err, undefined, 2));
});

// Establish server connection
// PORT ENVIRONMENT VARIABLE
const port = process.env.PORT || 8000;
app.listen(port, () => console.log(`Listening on port ${port}..`));

// Creating GET router to fetch all the learner details
app.get("/learners", (req, res) => {
  mdbConnection.query("SELECT * FROM learnerdetails", (err, rows, fields) => {
    if (!err) res.send(rows);
    else console.log(err);
  });
});


Did you start by establishing that you can connect to the database via a known-to-work mechanism? Did you step through your code in a debugger to establish exactly where it's hanging?

New Yorp New Yorp fucked around with this message at 22:14 on Apr 27, 2022

keep punching joe
Jan 22, 2006

Die Satan!

New Yorp New Yorp posted:

Did you start by establishing that you can connect to the database via a known-to-work mechanism?

I can access it through the terminal if that's what you mean? It seems to be operating fine as I can add/remove rows etc.

If I execute localhost:8000 in a browser it displays 'Cannot GET /' ... but if try an load localhost:8000/learners the page hangs. If I load localhost:8000/(any other directory) it outputs 'Cannot GET /'

This is the debug console output, it says the port is already in use, but have also tried changing that to no effect.

code:
[nodemon] starting `node script.js`
Debugger attached.
Waiting for the debugger to disconnect...
node:events:504
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE: address already in use :::8000
    at Server.setupListenHandle [as _listen2] (node:net:1330:16)
    at listenInCluster (node:net:1378:12)
    at Server.listen (node:net:1465:7)
    at Function.listen (/home/***/edureka/node_modules/express/lib/application.js:635:24)
    at Object.<anonymous> (/home/***/edureka/script.js:25:5)
    at Module._compile (node:internal/modules/cjs/loader:1103:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
Emitted 'error' event on Server instance at:
    at emitErrorNT (node:net:1357:8)
    at processTicksAndRejections (node:internal/process/task_queues:83:21) {
  code: 'EADDRINUSE',
  errno: -98,
  syscall: 'listen',
  address: '::',
  port: 8000
}
[nodemon] app crashed - waiting for file changes before starting...
^CWaiting for the debugger to disconnect...

keep punching joe fucked around with this message at 22:26 on Apr 27, 2022

Magnetic North
Dec 15, 2008

Beware the Forest's Mushrooms

keep punching joe posted:

This is the debug console output, it says the port is already in use, but have also tried changing that to no effect.

Sorry to be this guy, but what did you change it to? Ports under 8000 are kinda common. In the past, I have had problems with code where I ended up crossing with a port unexpectedly. (Different stuff, but similar enough in principle.) https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers shows the ranges allowed. When running services locally, I try to set the port to something like 55443 or something way way out there, closer to 65535, that's unlikely to be in use. I'd suggest trying with a larger, 5 digit number just to confirm you didn't get unlucky. If you try a few numbers in the 30-50k zone and it says that every time, then we can accept that something else is wrong or the error message is just bad.

aperfectcirclefan
Nov 21, 2021

by Hand Knit
Make sure it's actually reading your process env file and you imported it, or else it's going to revert to 8000 and that could be in use.

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

keep punching joe posted:

Ok going to need some advice here. Posted earlier about a potential secondment into a developer role, but to get the job I need to complete a short project. Project is to create a CRUD app using Node JS and MariaDB.

I've been through numerous tutorials on how to connect my database but keep running up against the same issue, in that I'm unable to get a connection established. As a sidenote, every guide I've been able to find is for MySQL/Node integration, so maybe that's causing the issue, but I thought that it was functionally the same as MariaDB.

As an example, I was running through this guide. And everything seems fine until I come to test the connection with Postman, it doesn't do anything just hangs.

code:
Running on...

OS: Manjaro Linux x86_64 
Host: MacBookPro8,1 1.0 
Kernel: 5.13.19-2-MANJARO 
CPU: Intel i5-2415M (4) @ 2.900GHz 
GPU: Intel 2nd Generation Core Proce 
Memory: 4620MiB / 7866MiB

This is the script I'm trying to run. I'm pulling my hair out because this is the same wall I hit every time, and I cant figure out what is going wrong. Running the GET request on postman to http://localhost:8000/learners just results in the program hanging.

Is it the script thats wrong? Or is it being blocked by my firewall or something?

code:

const mariadb = require("mariadb");
const express = require("express");
const bodyparser = require("body-parser");
var app = express();
// Configuring express server
app.use(bodyparser.json());

// MariaDB details
var mdbConnection = mariadb.createPool({
  host: "localhost",
  user: "root",
  password: "password",
  database: "learners",
  multipleStatements: true,
});

mdbConnection.getConnection((err) => {
  if (!err) console.log("Connection established");
  else console.log("Connection failed" + JSON.stringify(err, undefined, 2));
});

// Establish server connection
// PORT ENVIRONMENT VARIABLE
const port = process.env.PORT || 8000;
app.listen(port, () => console.log(`Listening on port ${port}..`));

// Creating GET router to fetch all the learner details
app.get("/learners", (req, res) => {
  mdbConnection.query("SELECT * FROM learnerdetails", (err, rows, fields) => {
    if (!err) res.send(rows);
    else console.log(err);
  });
});


You have "const port = process.env.PORT || 8000;"

Pretty sure that's logical or

So port is true. Probably not what you want

Magnetic North
Dec 15, 2008

Beware the Forest's Mushrooms

leper khan posted:

You have "const port = process.env.PORT || 8000;"

Pretty sure that's logical or

So port is true. Probably not what you want

I thought the same thing too, but apparently, the logical or will return one of the operands if they are not boolean. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_OR

:capitalism: except That's Javascript!

(no one who actually understands JS correct me)

spiritual bypass
Feb 19, 2008

Grimey Drawer

Magnetic North posted:

I thought the same thing too, but apparently, the logical or will return one of the operands if they are not boolean. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Logical_OR

:capitalism: except That's Javascript!

(no one who actually understands JS correct me)

Browser console confirms it :argh:

wilderthanmild
Jun 21, 2010

Posting shit




Grimey Drawer
I really hate that bit of javascript logic. Why do that when the null coalescing operator(??) exists?

teen phone cutie
Jun 18, 2012

last year i rewrote something awful from scratch because i hate myself
if the value is a non-boolean (and it's not a 0 or empty string), then it's truthy.

Examples of truthy values: [], {}, "hello", 2

If the idea that it's a problem with process.env.PORT, I'd console log that and figure out what it is. Usually environment variables in JS projects get typed as strings so, if app.listen() expects a number and you're passing it "5000" instead of 5000, that might be an issue as well :shrug:

prom candy
Dec 16, 2005

Only I may dance
I think if you change

code:
console.log(`Listening on port ${port}..`)
to

code:
console.log(`Listening on port`, port)


you'll be able to see if port is a number or a string. Not to throw another layer of difficulty at you but this is why Typescript rocks.


wilderthanmild posted:

I really hate that bit of javascript logic. Why do that when the null coalescing operator(??) exists?

Javascript has a null-ish coalescing operator (lol) but it's relatively new. Ruby treats || the same way Javascript does as well, maybe some other languages too.

lifg
Dec 4, 2000
<this tag left blank>
Muldoon
It makes sense to me, but I spent a long time in Perl-land so a lot of unnatural constructs make sense to me.

wilderthanmild
Jun 21, 2010

Posting shit




Grimey Drawer
I mean I can read it because I've seen it used before, but it just feels wrong :(

Butter Activities
May 4, 2018

I will never understand people who prefer JS to Python or even Powershell for scripting, JS has the weirdest ways to do types and operators

teen phone cutie
Jun 18, 2012

last year i rewrote something awful from scratch because i hate myself

Vincent Valentine posted:

I don't know your situation exactly, but I had the same problem. Lots of rejections, a lot more than I was expecting considering I thought I knew my stuff. Turns out I actually do!

Coming back to this post to say this to say I really feel like this is the case.

I submitted a code assignment this week which was to create a React app from scratch, which had some required features, and then some optional ones (why you would give a candidate "optional" features is beyond me). I hit every required bullet point and did 2/4 of the optional features and then got a rejection letter with the explanation that my code was "sub-optimal." It blew my mind that a completely working solution wasn't enough to get me to the next round of the interview process.

So essentially I spend a solid 30 minutes bootstrapping my project and getting the libraries I needed, another 30-45 writing some base components, and then another solid 1+ hour on the business logic. I left my code as "only sort of production ready" because I spent an extra hour working on it and wasn't willing to work any more.

I think I'm just done interviewing for a while for my own mental health. I'm not willing to go the extra mile for these homework assignments which other candidates clearly are, and it's biting me in the rear end every time.

It's honestly interesting how much trouble I'm having interviewing as a Senior opposed to when I was applying for Mid roles.

teen phone cutie fucked around with this message at 00:42 on Apr 29, 2022

asur
Dec 28, 2012
If you are interviewing for Senior roles there's absolutely no reason to tolerate takehomes. Tell the company to screw off and go interview at many other companies that don't add to the already long interview process.

Maybe make an exception if you find the unicorn that lowers the number of interviews because they have a takehome assignment.

Mecca-Benghazi
Mar 31, 2012


We do a recruiter screen, a phone interview (30 minutes), the take home over a time period of your choosing, and then a “face to face” for an hour and a half and anyone with a solid try at the take home gets to the face to face.

Miss Broccoli
May 1, 2020

by Jeffrey of YOSPOS
Is there any good way of dealing with performance anxiety when doing techynical interviews? I went and had an all day interview for a summer intern / potential grad position and the company took 10 while telling me I'm on the waitlist. They said from a culture standpoint I very easily scored in the top 10, and the feedback he really hammered into me was "you have great technical skills, you were let down by how nervous you were at the start, but you have nothing to be nervous about". Which yeah I was making GBS threads myself at the start, and kept locking up out of anxiety, once I started getting the ball rolling and started getting feedback that I was doing well I smashed the the rest.

Its not impostor syndrome. It's anxiety when I feel pressure to perform. This sort of thing is an issue for me everywhere in life too and hey now its cost me a position

prom candy
Dec 16, 2005

Only I may dance

SMEGMA_MAIL posted:

I will never understand people who prefer JS to Python or even Powershell for scripting, JS has the weirdest ways to do types and operators

It's just comfort. I know JavaScript is wildly flawed but I also write JavaScript all day, so if I need to quickly do anything it's the tool I reach for.

Butter Activities
May 4, 2018

prom candy posted:

It's just comfort. I know JavaScript is wildly flawed but I also write JavaScript all day, so if I need to quickly do anything it's the tool I reach for.

That makes sense. I didn't touch even touch JS until I was already very fluent with Python and dabbled with Powershell, C and Go. A lot of people start with JS.

redleader
Aug 18, 2005

Engage according to operational parameters

wilderthanmild posted:

I really hate that bit of javascript logic. Why do that when the null coalescing operator(??) exists?

because ?? was only added in es2020 and || has been around since the dinosaurs

Oolb
Nov 18, 2019
I gotta admit, I'm freaking out over the whole interview process. It seems so drat exhausting. I don't want to have to memorize a billion little technical facts gd what a waste of time? idk. i know things just not how to cleanly articulate every aspect in a sentence. ugh. im tired

k so this isn't just me screaming: one hour leetcode a day until August plus half hour behavioral, gotta read ctci too for summer 2023 internships. idk i feel like I'll still get wrecked by something like What Is Java?. Um. Who cares? (i know that's just burnout talking, sorry)

Oolb fucked around with this message at 08:12 on Apr 29, 2022

The March Hare
Oct 15, 2006

Je rêve d'un
Wayne's World 3
Buglord

Miss Broccoli posted:

Is there any good way of dealing with performance anxiety when doing techynical interviews? I went and had an all day interview for a summer intern / potential grad position and the company took 10 while telling me I'm on the waitlist. They said from a culture standpoint I very easily scored in the top 10, and the feedback he really hammered into me was "you have great technical skills, you were let down by how nervous you were at the start, but you have nothing to be nervous about". Which yeah I was making GBS threads myself at the start, and kept locking up out of anxiety, once I started getting the ball rolling and started getting feedback that I was doing well I smashed the the rest.

Its not impostor syndrome. It's anxiety when I feel pressure to perform. This sort of thing is an issue for me everywhere in life too and hey now its cost me a position

You will know best what works for you but I've always found exposure therapy effective for situations like these. It's good that you recognize that it isn't a lack of skill, but you need to focus on not beating yourself up.

If you are comfortable morally with trying to get interviews you don't really care about, interviews at places you wouldn't even really want to work at, that can be a helpful method of practicing. Otherwise it will just come with time.

I used to get shaky during my early days of interviewing but now that I know what to expect it's really just another day for me.

asur
Dec 28, 2012

Miss Broccoli posted:

Is there any good way of dealing with performance anxiety when doing techynical interviews? I went and had an all day interview for a summer intern / potential grad position and the company took 10 while telling me I'm on the waitlist. They said from a culture standpoint I very easily scored in the top 10, and the feedback he really hammered into me was "you have great technical skills, you were let down by how nervous you were at the start, but you have nothing to be nervous about". Which yeah I was making GBS threads myself at the start, and kept locking up out of anxiety, once I started getting the ball rolling and started getting feedback that I was doing well I smashed the the rest.

Its not impostor syndrome. It's anxiety when I feel pressure to perform. This sort of thing is an issue for me everywhere in life too and hey now its cost me a position

If this was interview specific, I'd say just interview more and get comfortable with it. You describe it as everywhere in life which sounds like an issue a therapist can help with.

Hadlock
Nov 9, 2004

The best solution to interview anxiety is interview early and often. You want FAANG to be your 20th interview, not your second

Try going to a speed dating event some time, the skills there are pretty similar: you want to make a good impression in the first 90 seconds, grind through some small talk and then get down to business, and not say anything stupid/super weird ("I breed competition rats in my spare time")

You can also join your local Toastmasters group, lots of resources for overcoming anxiety and learning how to better present yourself confidently

I recently had to interview a local neighbors kid to be a babysitter, I forgot how to talk to people due to the pandemic and awkwardly made conversation for about 30 minutes it was brutal. Practice practice practice

Hadlock fucked around with this message at 13:32 on Apr 29, 2022

lifg
Dec 4, 2000
<this tag left blank>
Muldoon
My one tip:

Arrange to have a phone call with a good friend five minutes before the interview, and have them tell you a bad joke.

You’ll go into the interview with good energy. It might help alleviate the nervousness.

prom candy
Dec 16, 2005

Only I may dance

SMEGMA_MAIL posted:

That makes sense. I didn't touch even touch JS until I was already very fluent with Python and dabbled with Powershell, C and Go. A lot of people start with JS.

Yeah my two strongest languages are Typescript and Ruby, with Swift in probably a distant third. Never worked with Python, Powershell, C, or Go. I've had a long career but it's mostly doing a lot of the same stuff. I've been "meaning to learn Python" for like 12 years.

oliveoil
Apr 22, 2016

SMEGMA_MAIL posted:

That makes sense. I didn't touch even touch JS until I was already very fluent with Python and dabbled with Powershell, C and Go. A lot of people start with JS.

Is hermetic python still a pain in the rear end that you have to set up for yourself

Because I don't want to install a bunch of packages, I just want to have exactly the libraries that I actually use for a small script

Idk if node lets you do that but that's one reason I always get an idea for a weekend project and then immediately change my mind and play videogames instead

ExcessBLarg!
Sep 1, 2001

prom candy posted:

Yeah my two strongest languages are Typescript and Ruby, with Swift in probably a distant third. Never worked with Python, Powershell, C, or Go. I've had a long career but it's mostly doing a lot of the same stuff. I've been "meaning to learn Python" for like 12 years.
Python is still an embarrassingly primitive language compared to Ruby, but it has a couple of things going for it:

Python finally added match statements (switch/case/when/etc), which was (in my opinion) its last major lacking feature, so it's a bit more reasonable than it used to be.

The ecosystem around Python has really developed over the past couple decades. Some Python libraries rival core Python itself in terms of scope. Pandas, for example, even reimplements a lot of Python's built-in functions that operate on iterators to operate on Series and DataFrames, but does so in a sane way.

If you're familiar with Ruby, Python isn't difficult to pick up. Follow the tutorial to get like 80% of it. That said, I still prefer writing core Ruby to core Python when I have the option, but I can't really deny that the ecosystem around Python is invaluable.

Hadlock
Nov 9, 2004

lifg posted:

My one tip:

Arrange to have a phone call with a good friend five minutes before the interview, and have them tell you a bad joke.

You’ll go into the interview with good energy. It might help alleviate the nervousness.

Ah yeah

Some of my best interviews, involved calling my nerdiest/most passionate ex coworkers and talking shop the night before. These guys eat breathe sleep tech and can help you tweak your industry verbiage and boost confidence

prom candy
Dec 16, 2005

Only I may dance

ExcessBLarg! posted:

Python is still an embarrassingly primitive language compared to Ruby, but it has a couple of things going for it:

Python finally added match statements (switch/case/when/etc), which was (in my opinion) its last major lacking feature, so it's a bit more reasonable than it used to be.

The ecosystem around Python has really developed over the past couple decades. Some Python libraries rival core Python itself in terms of scope. Pandas, for example, even reimplements a lot of Python's built-in functions that operate on iterators to operate on Series and DataFrames, but does so in a sane way.

If you're familiar with Ruby, Python isn't difficult to pick up. Follow the tutorial to get like 80% of it. That said, I still prefer writing core Ruby to core Python when I have the option, but I can't really deny that the ecosystem around Python is invaluable.

Python has actually pretty much dropped off my to-learn list. Since picking up Typescript I really only want to work with languages that have a good typing system. I still work with Ruby because I have to but my love for that language is long gone. Swift is cool but I find its type system leaves a lot to be desired. I love Typescript's union types and type narrowing and all the utility types like Pick and Omit. It really turns JS into a great language. If I was going to learn another language I'd maybe pick Go?

Hadlock
Nov 9, 2004

I would learn python simply because so many shops are using it

If you want a modern typed language people are looking for, check out go

Adbot
ADBOT LOVES YOU

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.
If you're looking for a language with a useful type system, why would you ever look at go?

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply