|
Shirec posted:I'm already on thin ice because the last refactor (the code I mentioned from last week? I think) ended up having unexpected results because it was so quick it was calling the api before the first section was done (the first section is required to be done on a separate platform before the second can fire but he wants it all done async). Are you using callbacks or status polling endpoints? The guy is a dick but this is a reasonable problem that should have been foreseen or caught.
|
# ? Apr 2, 2018 23:35 |
|
|
# ? May 29, 2024 08:16 |
|
baquerd posted:Are you using callbacks or status polling endpoints? The guy is a dick but this is a reasonable problem that should have been foreseen or caught. I wasn't originally because I was sending the information grouped up so that it would be bundled with all the sections together. The last re-factor where he basically told me exactly what to do, I didn't think of it until I started testing. I agree it was something I should have thought of, but to be fair, the end points were being created for me to call so I was testing blind for most of last week until it got completed. edit: Oh god, am I a lovely programmer? I know I'm really new but god drat, maybe it is me Shirec fucked around with this message at 00:20 on Apr 3, 2018 |
# ? Apr 2, 2018 23:55 |
|
geeves posted:Mapping data from one structure to another for the presentation view (or any other reason)? That's just common software engineering / CRUD-style development. I would think this will be more common these days with and without Node.js as a backend service. I don't want to give away too much in case someone does detective work to find the company, but one of the questions that was particularly hard was one the dealt with combining hashes, but there were a bunch of conditionals to how they had to be merged. For example, you have two objects JavaScript code:
if the value is an string or number, use the value from the second object if the value is another object, iterate over that object. previous rules apply so the result needs to look something like this JavaScript code:
|
# ? Apr 3, 2018 00:09 |
|
Grump posted:I don't want to give away too much in case someone does detective work to find the company, but one of the questions that was particularly hard was one the dealt with combining hashes, but there were a bunch of conditionals to how they had to be merged. I do almost exclusively front end these days and while this specific example out of any context might seem contrived its really important to be able to do things like this for front end work. The data coming from the API will often not have a structure that makes it easy for you to map it to the designs and you should be pretty comfortable manipulating it in this sort of manner. If you practice a bit youll get it! Also, Shirec, based on your history here, if you ever have to ask Is x normal the answer is no, it absolutely isnt. Your workplace and boss are complete nightmares and if I were you Id put in the minimum of effort there and spend your energy almost entirely looking for other work. Nobody should have to deal with such awful conditions. Harriet Carker fucked around with this message at 00:25 on Apr 3, 2018 |
# ? Apr 3, 2018 00:21 |
|
Grump posted:code ... Aha, here's a spot where it would be important to test obj.key1 === undefined and not feel that we want to become a compiler. Of course, in a normal language this would have been just maps and arrays, but we live with what we have.
|
# ? Apr 3, 2018 00:42 |
|
Shirec posted:I wasn't originally because I was sending the information grouped up so that it would be bundled with all the sections together. The last re-factor where he basically told me exactly what to do, I didn't think of it until I started testing. I agree it was something I should have thought of, but to be fair, the end points were being created for me to call so I was testing blind for most of last week until it got completed. First, hindsight is 20/20. "I should have thought of that" is an understandable reaction but a better one is, "Oh I didn't think of that. Let's fix it." Second you are not a lovely programmer because you made a mistake or didn't think of something. You're going to write lots and lots of bugs in your career, I promise. Furthermore, if you have a fixed deadline and a nonexistent or bad testing/QA process (which is the fault of your organization, not you personally), lots and lots of bugs are going to get into production. That's a fact. You can try and improve that but I wouldn't waste your time at that job.
|
# ? Apr 3, 2018 01:13 |
|
dantheman650 posted:I do almost exclusively front end these days and while this specific example out of any context might seem contrived its really important to be able to do things like this for front end work. The data coming from the API will often not have a structure that makes it easy for you to map it to the designs and you should be pretty comfortable manipulating it in this sort of manner. If you practice a bit youll get it! Agreed. Something like this is more often what day-to-day programming is like than whiteboarding some data structure that you might use twice in a 20 year career. A lot of the back-end stuff is just like this as well reformatting multiple objects into a view for the front-end or getting it prepared to send to another service. Recursion takes a bit to get into that mindset, especially when you don't do recursion that often. But these skills just make it easier to transition to the back-end. Add SQL to the list and now you're pretty much full-stack.
|
# ? Apr 3, 2018 02:14 |
|
Che Delilas posted:First, hindsight is 20/20. "I should have thought of that" is an understandable reaction but a better one is, "Oh I didn't think of that. Let's fix it." Yeah. Also when bosses get micromanagey, I've noticed this tends to shut down the thinking process of the implementers. Same with aggressive yelling. Basic mismanagement of creative workers.
|
# ? Apr 3, 2018 12:18 |
|
Hi thread, I've posted in here a few times before but I am going to lay this out a little since I am trying to figure out my next steps. I am a QA that started as a QA around a year ago with no prior QA or dev experience and have been doing a great job so far. I am at a SaaS company and we have quite a bit of QA automation stuff going on, but it is all handled by offshore/outsourced devs (all the onshore people were laid off or quit when the company was about a year and a half ago). I've been curious about and interested in coding for a long time and taught myself AutoHotKey to automate a bunch of work at my old job in support at this same company; some people told me that if I can teach myself that and understand the logic of what is going on, actual coding is a logical and achievable goal. I do not have a college degree; I have no Computer Science background or formal training. My current boss is aware of my desire to learn how to code in the interest of learning Automation. She has indicated to me that she thinks it would be very advantageous if I learn about Databases and SQL. I imagine this is so I can run database queries and be able to check the database for certain bits of information, but with my lack of CS background I have no idea where to get started on learning that kind of stuff. I have taken a lot of notes reading this thread and I understand that Harvard University's free CS50 may be a good place for me to start understanding some of the bare bones basics so I'm not silo'ing my knowledge or simply going into something more advanced blind. As some additional info, I have started a tutorial to write a discord bot but stalled out when some concepts got a little too advanced for me. I also started an Android N course that I got on sale on Udemy because a friend recommended it and I would love to be able to write basic apps as a hobby, but have put this on hold because I feel like it is very hand-holdy and there are again some seemingly basic concepts that the course glosses over assuming it is knowledge that I already have. Both of these things have reinforced my gut feeling that I should try to learn some more basic CS. Therefore, does the thread think I should focus on doing the Harvard University's free CS50 (or a similar) class first before branching out, or is there a step I missed somewhere? Oh and taking the time to try to get a full CS degree is essentially off the table as my free time is currently pretty limited, but not so much so that I would not try to complete some of these self-directed online courses. I also do not feel that going through that effort is necessary if I find the right resources online.
|
# ? Apr 3, 2018 17:09 |
|
What concepts are causing you trouble? Most people learn programming by jumping into a beginners course on something they like. If you enjoy Android development, continue that. If you need SQL for work, learn that too. Then its a matter of steadily broadening your knowledge to cover related areas. CS50 looks like a broad introduction to the field. I love stuff like that, and it will definitely teach you how to think like a computer scientist. If youre sure this is what you want to do, it sounds like a strong way to start your education. But its definitely not the only way to become a programmer.
|
# ? Apr 3, 2018 19:49 |
|
Collection of random thoughts... It sounds like you don't quite know what you want to do. What you need to build an app versus a backend website, are similar but vastly different. It definitely took me time to figure out exactly what I wanted to do. I don't think best jumping all over the place might be the best idea though. Also, getting stuck on difficult concepts is a common part of programming. I feel like each new problem I encounter is just a difficult as the last, it's more about building a skillset to solve them. One strategy I have whenever I don't understand something is to break it down. Then look up each piece I don't understand and repeat until I understand it all and build everything back up to understand the original issue.
|
# ? Apr 3, 2018 20:03 |
|
I'm one of those people who keeps recommending CS50 on this thread, and this post is no different. The first half is devoted to a lot of foundational stuff. You'll look at C, some algorithms (tries, BSTs, stacks, queues, etc.), and do a couple of pretty challenging projects. The second half is all in Python with Flask + SQLite (and some JavaScript front end stuff) so you'll get some basic experience writing simple SQL queries and hooking that up to a web app. I think they do a fantastic job of pushing you into it without holding your hand, but without leaving you completely floundering either. If your company is doing web work/you're interested in web dev, then I think this is a great way of getting a good taste of both the fundamentals and the more higher level topics. Definitely give it a look if you feel that this would be right for you!
|
# ? Apr 3, 2018 21:15 |
|
Part rant part question... I've been learning/doing web dev for about 3 years now and I'd say I have a pretty solid understanding of lots of disparate concepts. However, I still struggle with random interview questions like what does REST mean or what is the difference between HTTP/1.1 and HTTP/2.0. For REST, I spend most of my time building with Django REST Framework so I'm like I know this I just don't know the vocab for it. For the HTTP thing, I spent less than 5 minutes watching a tutorial and I'm like yeah, that totally makes sense and I understand the pain points of HTTP/1.1 all too well. But in the last week I've lost a final round interview and a second round interview on questions like that. Do you guys have any strategies for dealing/explaining this in an interview? I feel like the answer is probably to just browse a bunch of top X questions for FS web devs and answer all of them. Any other tips? I kind of want to avoid spending hours reading up on arcane crap when I could be learning more interesting stuff but perhaps I just have to do that.
|
# ? Apr 3, 2018 21:25 |
|
Before the interview: you just gotta learn the vocab. REST, MVC, semantic tagging in HTML, whatever. The more senior the role the more youre expected to know this stuff. Knowing the vocab makes communication with other web devs easier. At the interview: explain that youve have been using these technologies, and while you dont always know the acronym, you do feel comfortable with many of these concepts. Once they explain the concept, give an example something youve done to prove that you know it. Alternately, dont be afraid to just say Im sorry to say I dont know what that is. Interviewers appreciate it.
|
# ? Apr 3, 2018 21:57 |
|
huhu posted:Part rant part question... I end up just spending an hour before I start applying for new jobs and just straight memorize a bunch of the most common principles and definitions. I do a quick five minute refresh before any in-person tech interviews. I've generally got the book answer ready, so during the interview I can get to describing implementing or using the concept in various projects. I'm not a fan of rote learning, but it's worked best for me for the five to ten same questions/concepts of every interview. downout fucked around with this message at 02:51 on Apr 4, 2018 |
# ? Apr 4, 2018 01:35 |
|
I have a sort of specific question that I guess requires a bit of background. Basically: I'm nearing graduation, live in my hometown with a decent but not great amount of job opportunities in software, and I'm an okay candidate that lacks much job experience directly working with software. My job experience is more related to accounting with the occasional IT task here or there since I was working at very small businesses. I can code, and will have a basic website done by the end of this Spring. I have familiarity with .NET and SQL Server. I'm under the impression that with persistence I would eventually get hired in a dev position, especially because I'd be happy doing basically anything I can. No qualms about applications, webdev, or database stuff. The issue is that my fiance and I are looking to move to Denver somewhere around a year from May. Now, this will mean a much higher volume of openings to throw myself at which is great but it leaves me a bit unsure how to approach this next year. I'm working off the idea that it would be best to hold my first serious position for two years and that it will probably take some time for me to get hired as a junior dev/programmer/whatever. I've gotten a handful of rejections and positions closed on me, which is fine, but so far I haven't been looking outside of developer positions. I guess my question then is whether it might be worth looking at something like Helpdesk for a year? There's also a couple of Database Administrator positions that I could feasibly apply to having worked with SQL and Tableau. But ideally in a year I'd like to have improved my odds of getting a developer position, and working directly in software is surely my best chance to do so. I know a few small businesses I intend on designing databases and associated applications for which will help me build a portfolio, and can work on personal projects in the meantime no matter what happens. I just don't want to pigeonhole myself outside of my field because of this unwieldy time constraint, yet I need a job more than I need a good job at least at this point.
|
# ? Apr 4, 2018 02:08 |
|
If you want to be IT support, sure, go ahead. I don't think it will give you any special advantage toward being a software developer, though. (It might have some incidental benefits, like you're at least around computers all day, so you might learn things. But IT support and development are pretty different career paths.)
|
# ? Apr 4, 2018 02:31 |
|
If you're worried about having a short first stint on your resume, "I had to relocate" is a perfectly acceptable reason to hold a job less than however long you're "supposed to" hold a job and is obvious to the person reading your resume as long as they aren't dumb as a brick or you leave off the city/state information for some reason (just don't do that). If they ask why you had to move, say you followed your spouse but don't see any reason they'll have to move again for the foreseeable future.
|
# ? Apr 4, 2018 13:50 |
|
huhu posted:Collection of random thoughts... I have not exactly had 'trouble' with some things, but the two tutorials/classes that I mentioned both have parts where it is assuming you know things, even basic things, where I understand the concept and when I break it down by going over it a few times I figure it out. My problem is that I feel like some of these things are things that I should have already known had I earned a CS degree. lifg posted:What concepts are causing you trouble? The Dark Wind posted:I'm one of those people who keeps recommending CS50 on this thread, and this post is no different. Thank you guys and gals. p.s. Shirec I just want to point out that I would have ragequit that place months ago and I think you are incredibly resilient and strong for sticking around as long as you have. Keep fighting.
|
# ? Apr 4, 2018 14:07 |
|
If automation is what youre looking for, Id recommend finding an REST API that looks cool, downloading Insomniac, and then playing around with making HTTP requests. After that, Id recommend trying to write simple scripts to get data from an API and put the data elsewhere, like a text file. Thats pretty much what automation is. Data in, data out.
|
# ? Apr 4, 2018 14:11 |
|
AAAAA! Real Muenster posted:My problem is that I feel like some of these things are things that I should have already known had I earned a CS degree. AAAAA! Real Muenster posted:It seems like based on what I am saying is giving me trouble and what you guys are saying about the CS50 course, I should really start with that. AAAAA! Real Muenster posted:Simple things like "why is the file laid out this way" and "Is this layout or format a language specific thing, or is it a general rule?" Best of luck!
|
# ? Apr 4, 2018 14:55 |
|
downout posted:I end up just spending an hour before I start applying for new jobs and just straight memorize a bunch of the most common principles and definitions. I do a quick five minute refresh before any in-person tech interviews. I've generally got the book answer ready, so during the interview I can get to describing implementing or using the concept in various projects. If only we could attract candidates that actually were prepared even like this. We had one iffy candidate last week - great personality, but did more PM work and wanted to get back in to programming. It was clear he was rusty - admitted he didn't remember the difference between a List and a Set. So we decided to setup a follow up call a few days later for it and told him explicitly we would be asking him questions on Java fundamentals. You would think he studied, even a little bit. Q1: "What's the difference between a List and a Set". A1: "I'm going to go with absolutely nothing"
|
# ? Apr 4, 2018 15:57 |
|
In the real world, if you don't know something you spend 15 minutes on google/stack overflow/whatever relevant docs and you educate yourself as needed for what you're trying to accomplish. What is the purpose in asking questions that could be solved this way? It seems like you're just testing if they're good at interviews, not if they're good at the actual job.
|
# ? Apr 4, 2018 16:17 |
|
Finally getting promoted out of support....into being a server admin and person who trains clients how to use our software So....im getting farther away from what I actually want to be doing (writing code). Awesome. As an added bonus, my boss says I suck at customer service, despite rarely ever having problems with clients. Not really sure how Im getting a raise and a promotion after being told Im bad at my job??? Time to ASAP teen phone cutie fucked around with this message at 16:48 on Apr 4, 2018 |
# ? Apr 4, 2018 16:44 |
|
Running training sessions is actually intensive customer service.
|
# ? Apr 4, 2018 17:35 |
|
Grump posted:Not really sure how Im getting a raise and a promotion after being told Im bad at my job??? This is called "being on the management track." Congratulations! quote:Time to ASAP Actually, this.
|
# ? Apr 4, 2018 17:38 |
|
Capri Sun Tzu posted:In the real world, if you don't know something you spend 15 minutes on google/stack overflow/whatever relevant docs and you educate yourself as needed for what you're trying to accomplish. What is the purpose in asking questions that could be solved this way? It seems like you're just testing if they're good at interviews, not if they're good at the actual job. The problem is, if you don't know the difference between a List and a Set you're going to write inefficient code without knowing it. In many cases it won't matter - but if you're working with a reasonable amount of data, the difference between list.contains() and set.contains() is huge - and could easily be the difference between something being doable and not doable. and you wouldn't necessarily know to google it.
|
# ? Apr 4, 2018 19:11 |
|
Capri Sun Tzu posted:In the real world, if you don't know something you spend 15 minutes on google/stack overflow/whatever relevant docs and you educate yourself as needed for what you're trying to accomplish. What is the purpose in asking questions that could be solved this way? It seems like you're just testing if they're good at interviews, not if they're good at the actual job. They were given 2 days and an explicit description of the problem. They didn't bother to do the 15 minutes at some point in that 2 day period. Like I get the general "why ask these questions??" but it's just been demonstrated as an effective filter for this person who couldn't do that bare minimum.
|
# ? Apr 4, 2018 19:48 |
|
Also, if you need to take 15 minutes on Stack Overflow to answer a bunch of basic questions for yourself that a solid developer is going to already know the answer to in basically no time at all, you aren't going to be that effective. Yes, trivia questions are lovely for interviews, but knowing the difference between a list and a set is not one of those.
|
# ? Apr 5, 2018 06:14 |
|
Steve French posted:Also, if you need to take 15 minutes on Stack Overflow to answer a bunch of basic questions for yourself that a solid developer is going to already know the answer to in basically no time at all, you aren't going to be that effective. Yes, trivia questions are lovely for interviews, but knowing the difference between a list and a set is not one of those. I mean, even I can tell you what the difference is between a set and list without googling it, and I'm pretty new to programming. True, it might be easy to google the knowledge, but you're right that if you don't know, a lot of solutions to problems won't occur to you. The most basic example: but whenever I need to remove duplicate values from a list, I just put them into a set, and then back into a list. Also, if you take the argument of "you don't need to know it if you can google it and learn it in 15 mins" to it's furthest conclusion, it'd mean that human beings would basically not need to know much of anything, other than how to google things.
|
# ? Apr 5, 2018 21:41 |
|
3D GAY WORLD posted:Also, if you take the argument of "you don't need to know it if you can google it and learn it in 15 mins" to it's furthest conclusion, it'd mean that human beings would basically not need to know much of anything, other than how to google things. To be fair, knowing where to look for answers is a skill in and of itself.
|
# ? Apr 5, 2018 22:01 |
|
3D GAY WORLD posted:human beings would basically not need to know much of anything, other than how to google things. This is pretty much how I feel at work every day
|
# ? Apr 5, 2018 22:23 |
I couldn't tell you the difference between a set and a list until I looked it up during this discussion, simply because I was unfamiliar with the terminology. And that's after 5 years of studying and programming. I still use them correctly in my work as far as I can tell, I was just not familiar with the abstractions, since I've never come across them in my studies.
|
|
# ? Apr 5, 2018 22:27 |
|
Joda posted:I couldn't tell you the difference between a set and a list until I looked it up during this discussion, simply because I was unfamiliar with the terminology. And that's after 5 years of studying and programming. I still use them correctly in my work as far as I can tell, I was just not familiar with the abstractions, since I've never come across them in my studies. What do your studies consist of? This is not normal for someone who has studied computer science for 5 years.
|
# ? Apr 5, 2018 22:46 |
Portland Sucks posted:What do your studies consist of? This is not normal for someone who has studied computer science for 5 years. Software engineering. Focused mostly on low level, computer architecture and rendering, though. I can think of three courses that could potentially have covered it, which were introductory programming (which, to be fair, might have covered it and I just forgot,) introduction to software engineering which focused more on the formal logic of a computer (e.g. making a CPU from NAND gates) and general SE principles and then CS modeling which seemed to focus more on automatons, grammars, etc. Maye it was covered in one of the few algorithms and datastructures 1/2 lectures I wasn't there for? It certainly wasn't an abstraction that was omnipresent in any of these courses.
|
|
# ? Apr 5, 2018 23:01 |
|
I can't imagine being unable to answer an interview question and not immediately running home and looking it up
|
# ? Apr 5, 2018 23:19 |
|
Volguus posted:To be fair, knowing where to look for answers is a skill in and of itself. Good point. I can't begin to count the number of times that someone I knew tried to find an answer to a question, only to spend 10 minutes searching and then come up with nothing (or worse yet, not even bothering to google it, and instead ask random people if they know). Then they mention their question to me, I whip out my phone and have the answer in under a minute. It's not like I'm some google genius either. People seem to be extremely bad at understanding how to use key words and omitting the useless bits, let alone actually searching for exact matches and other more advanced features.
|
# ? Apr 6, 2018 00:34 |
|
3D GAY WORLD posted:Good point. I can't begin to count the number of times that someone I knew tried to find an answer to a question, only to spend 10 minutes searching and then come up with nothing (or worse yet, not even bothering to google it, and instead ask random people if they know). Then they mention their question to me, I whip out my phone and have the answer in under a minute. prefixing a keyword with "-" is black magic
|
# ? Apr 6, 2018 00:36 |
|
Please forgive me, a long one happened today and I need to get the poison out (tl;dr my boss sucks and is a horrible rear end in a top hat) Another week, another time for my boss to berate me in front of my coworkers. Was in final testing phase with the current iteration of my code (which, if y'all recall, was specifically designed to operate as it does from my boss, this is the 3rd major re-write at this point), and ran into issues with knowing when all the jobs in our messages queues finished.* I had discussed this in our morning meeting, and boss told me that I needed to be better about asking my coworkers for help (previously I had been told that their time was more valuable than mine and I needed to not bother them). So after testing that everything is working but this one bug, I go ask for my coworkers help. We start discussing it, for about 5 minutes, before my boss swoops in from his office. He proceeds to question me about the entire design of the project, while constantly interrupting me trying to explain, rolling his eyes/throwing up his hands if I started getting nervous/wasn't explaining well enough/didn't use a naming structure he liked. Sometimes also he doesn't want an explanation, and if I start explaining, he'll interrupt me and loudly say "YES OR NO?" until I say just one of those words. According to him, every decision I made, from database models, to the structure of how I was setting up the data processing, to setting up api calls, was wrong. He kept stopping to ask my co-workers opinions of the code, and if they could debug it (I've been working separately from them for weeks), and how much this would gently caress us for future implementations. He's the one who looked at how I was designing it for this revamp and signed off. I was able to point that out exactly once, because he asked why I wasn't saving more things to the database and instead was passing it in around in Redis. I answered that I was told not to. This goes on for about an hour and a half. I managed not to cry although I got close a few times. At the end, he said that I needed to take my co-workers through the code and decide what our options were. That he was empowering us to make our own choices. Then he left for lunch. So we did that, after I took a quick restroom break to finish out my panic attack and clean up a bit from tearing up. We were pretty close to working out a good solution, and my coworkers said they didn't think my code was bad. Boss gets back from lunch. We're still discussing but he goes back into his office so I think it'll all be fine. No, no it's not fine. This starts lecture two, which ends up being another hour and a half. He basically goes over all the bits from the first lecture, except harsher and about how I should have used all these tools that he told the guys about and not me, and that I needed to be constantly taking steps back and having everyone agree on design. He then writes out his plan for what he wants the new implementation to look like, but we don't have enough time, so we just need to get my garbage to work, and then support it forever. He tasks one co-worker with helping me, and we are set free. I am left to work in peace for the rest of the day. *If you're curious, it's reading in a file of various lengths, creating database entries based on certain criteria, and the data may or may not repeat through the file. The objective was to process all the data, send it in chunks over to our main platform, and go relatively fast. Challenge was that certain parts had to be sent before others, and there was no good way to know what the final count would be.
|
# ? Apr 6, 2018 02:11 |
|
|
# ? May 29, 2024 08:16 |
|
Please report him for that health privacy violation asap so we can get a live feed of how his life gets trashed. Thanks in advance.
|
# ? Apr 6, 2018 02:19 |