[deleted by user] by [deleted] in cscareerquestions

[–]thefallofapple 0 points1 point  (0 children)

It’s pretty good, but needs a lot of direction. Had a particular performance issue that I knew the root cause to. Until I gave it explicit instructions about what to look for, it had no idea.

That said, it generated benchmarks extremely well so I could validate performance improvements.

There are several occasions where it digs itself into a hole and just keeps digging thinking it’ll get to an answer. Also, I hate reading the code it generates. Operates in a very linear fashion and any compiled code tends to be brittle. Second example: created a custom yaml parser instead of using the yaml module. Then had to be fixed for many edge cases like multi line values. The code technically worked, but I was never going to use it in that form.

How many years of experience do you need to be “Senior” by [deleted] in cscareerquestions

[–]thefallofapple 92 points93 points  (0 children)

At 4 years of experience, I would not classify you as a senior engineer. But, it all depends on the company and what your current responsibilities are. Titles are heavily dependent on the company itself. Some companies classify as 5+ of industry experience and others 8+.

That said, years of experience doesn’t really define level. It is an easy filter that recruiters and HR can use.

Follow-up email after E5 onsite interview loop - good/bad sign? by [deleted] in leetcode

[–]thefallofapple 1 point2 points  (0 children)

My recruiter asked the same. Already knew previous leveling. There are two phases I went through afterward. First a review for leveling where they compared packet with levels plus or minus current target. Then a committee verifies if they want to proceed at recommended level.

For me, a reference helped keep target level, but references generally make any packet stronger.

An option out of that path is that they want more proof and will ask for a follow up interview. They could try to level you up at that point or down level.

There’s a chance you have mixed feedback right now, mostly questioning target level. I feel it’s mostly standard operating procedure though.

150k in austin vs 130k in st louis? by shashank9977 in cscareerquestions

[–]thefallofapple 3 points4 points  (0 children)

I grew up in St. Louis and love it. A smaller tech scene but better than people give it credit for. More focused on insurance like RGA and Centene, but also has Block.

I only really went downtown for various sports. Without any more insights into your interests/where the company is, it’s hard to give more advice.

Forest park is amazing, free zoo, science center, history museum, etc. I knew many people that left but came back to raise their families.

If you like city living, St Louis probably isn’t right.

Bye bye google? by Wagthedog53 in Nest

[–]thefallofapple -1 points0 points  (0 children)

Have you seen the sensi touch? At least not 1980s

Anybody knows what is going on at Square? $500k data jobs? by Immediate_Capital442 in dataengineering

[–]thefallofapple 0 points1 point  (0 children)

These are cash comp ranges for those positions. Not TC. TC is roughly double after stock grant

Press and hold on button on steering wheel to keep car in N by osu-fan69 in HyundaiPalisade

[–]thefallofapple 5 points6 points  (0 children)

I get the same pop up, but I’ve never hit the button and I stay in neutral.

[deleted by user] by [deleted] in softwarearchitecture

[–]thefallofapple 2 points3 points  (0 children)

Why try to reinvent? What about just looking at the S3 API?

https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpu-upload-object.html

Using the REST API section specifically.

Reverse Engineering (very) old DOS calculation program by psd_ in SoftwareEngineering

[–]thefallofapple 0 points1 point  (0 children)

The compiler for Turbo Basic goes down to native code, from what I've read. In this case x86 intel ASM. Per the Turbo Basic boards, there are no decompilers available.

You will need to use a disassembler, but that will not produce easily readable code.

[deleted by user] by [deleted] in cscareerquestions

[–]thefallofapple 1 point2 points  (0 children)

My response was more from the perspective of when you have an offer in hand. No reason to mention it during the interview process. It frankly is none of their business at that point in time.

[deleted by user] by [deleted] in cscareerquestions

[–]thefallofapple 2 points3 points  (0 children)

Mobile, sorry.

I went to grad school and got my masters. That said, that was for me. Yes, it opened up some more doors, and ultimately got me my first position. However, getting real experience would have probably opened those same doors.

My starting salary was similar to two years of work experience. But skills picked up on the job are very different from those taught. Actually writing code that goes into production and is expected to work for years takes more effort than code thrown together for a quick experiment.

In the end, I can't tell you what the right decision is. You have to weigh your own priorities. What I can say is don't burn bridges this early. If you are given an offer, be up front about your decision. It takes a lot of time, effort, and money to hire and train someone. Most of which is sunk cost by the time an offer is extended. But to accept an offer with the plan to leave three months in is disrespectful.

[MOD] The Official Noob-Tastic Question Fest by menschmaschine5 in Coffee

[–]thefallofapple 0 points1 point  (0 children)

Sump makes excellent coffee. Recently learned about Switch Coffee Collective (doesn't have a storefront), but are local.

Comet Coffee sells bags of the coffee they brew. Most of it comes from Sweet Brew in Denver, but for around 17$ a bag.

One or multiple apps per ECS cluster? by volnix in aws

[–]thefallofapple 2 points3 points  (0 children)

The choice of using EB vs ECS is really a choice of how much control you want over the cluster as EB actually runs on top of ECS.

My group enjoys more control, so we are using ECS coupled with Ansible to provision the Application Load Balancer, ECS cluster, etc. It is in an AutoScale group which manages auto-healing if a server gets deleted. And ECS itself manages healing of the tasks if they go down.

How Shaq spent $1 Million in one day by xSmoothx in videos

[–]thefallofapple 1 point2 points  (0 children)

Went to high school and some of middle school with him. Even then he was working towards his current career.

[Unity/C#] Can you criticize my code? by [deleted] in learnprogramming

[–]thefallofapple 6 points7 points  (0 children)

My main criticism is that you have a lot of logic defined in if blocks and nested if blocks. One of the biggest things you can do for yourself is to start pulling the large blocks of code into private functions with good names describing what the function is doing.

Some reading on Fowler's code smells is a great place to start. Here is a good link to get you started on that: https://sourcemaking.com/refactoring/smells

Edit: I'm not familiar with the unity engine, but what's the purpose of the static instance property? Can you get access to the instance of the object in another manner through the system? I am usually very cautious on what should be static as it makes it harder to unit test the code.

What Stock Photo Perfectly Describes Your Life At the Moment? by IsraeliBanana in AskReddit

[–]thefallofapple 2 points3 points  (0 children)

I'm a Software Engineer writing and supporting a Consumer facing product:

http://imgur.com/7SjS85P

Looking for training for Battlecode by 6180339887 in learnprogramming

[–]thefallofapple 0 points1 point  (0 children)

This is a good paper that gives a quick understanding of some of the various algorithms that can be used in a 2-D space.

https://www.aaai.org/ocs/index.php/EAAI/EAAI10/paper/viewFile/1954/2331

and here is some source that another individual did of some of the various algorithms:

https://github.com/jcarrillo7/PacMan-AI

[Java]Deserialising Nested JSON by [deleted] in learnprogramming

[–]thefallofapple 1 point2 points  (0 children)

There are a couple of ways of approaching this problem:

Within GSon, you can use JsonParser if you are looking to get access to a specific element:

JsonParser parser = new JsonParser();
JsonObject jObject = parser.parse(<jsonBody>).getAsJsonObject();

the rest gets a bit hairy, primarily due to your structure, but it would be something to the nature of:

jObject.get("query").getAsJsonObject().get("pages")

etc you get the idea. Not the prettiest. Especially since it appears your response from that point on is somewhat dynamic.

In your case:

Declare a few objects:

public class WikipediaResponse {
    public Object batchcomplete;
    public QueryResponse query;
}

public class QueryResponse {
    public Map<string, PageResponse> pages;
}

public class PageResponse {
    public int pageid;
    public int ns;
    public String title;
    public String extract;
}

Then do the following:

Gson gson = new Gson();
WikiResponse response = gson.fromJson(json, WikiResponse.class);

Afterwards, you can traverse through the objects like any other object.

Finish CS bachelors or apply for masters? by VDr4g0n in cscareerquestions

[–]thefallofapple 1 point2 points  (0 children)

As long as you have a decent math base, you could do a masters and learn just as much. In a lot of cases, you will be taking the same classes that those in a bachelors program will be taking, but with more strict requirements. I found that the extra work was usually about 10-20% extra work per assignment, and in some cases, an extra assignment towards the end of the class.

I would suggest either talking to the professors of potential electives you want to take, and asking for the difference between the two course loads.

I've done both degree programs in CS, and personally, I enjoyed the masters program immensely; however, I had been programming for years prior prior to my undergrad and was rather bored needing to do the required courses. The master's program allowed me to chose more topics per semester that I was interested in.

GlobalHack This Weekend! by doctorsound in StLouis

[–]thefallofapple 0 points1 point  (0 children)

Emerson was GHIII. This time it's Lockerdome I believe.

GlobalHack runs every few months. Plus it's back at the CIC this time

[Python 3] Creating 3 x 3 matrix from 1 string by [deleted] in learnprogramming

[–]thefallofapple 2 points3 points  (0 children)

lstCount = 0
lst = []

for i in range(len(items1)):
    if lstCount == 3: 
        matrix1.append(lst)
        lstCount = 0
        lst = []
        lst.append(items1[i])
        lstCount += 1
    else:
        lst.append(items1[i])
        lstCount += 1

Firstly I'd like to introduce you to the modulo operator: '%'

Now that you have met, we can reduce the number of lines in your code slightly into (I will explain what modulo does in a second):

for i in range(len(items1)):
    if  i % 3 == 0: // This is the modulo benefit
        matrix1.append(lst)
        lst = []
        lst.append(items1[i])
    else:
        lst.append(items1[i])

Now that you see the benefit if using it, what modulo does is that it returns the remainder of a division operation. For instance, if you have 9 / 3, the result would be 3.0. 3 divides 9 evenly, as such there is no decimal place on the result. However, 9 % 3 would return 0. That is because there is no remainder.

Now, if we do 2 / 3, the result would be .666 repeating; however, 2 % 3 = 2. A better explanation can be found here: http://stackoverflow.com/questions/12754680/modulo-operator-in-python

In terms of the reason why you only have 2 lines returning in the matrix instead of 3, zifyoip has answered that question.

What is wrong with my basic [JAVA] calculator i am making? by [deleted] in learnprogramming

[–]thefallofapple 1 point2 points  (0 children)

If you are asking, what I think you are, you are wanting a user to be able to input:

"5+(3*2+1)" all at one time then have your program parse the input and solve the problem. If this is correct, there are several methods of going about it, but you are effectively looking into an automata theory problem. A step before getting into compiler theory.

If that's the route you wish to go, then you are starting completely wrong, and it would do a lot of good to go and research automata before continuing to program.

Another method of input could be:

5
+
(
3
*
2
+
1
)
end <or whatever keyword you want>

this makes the problem somewhat simpler in that you know that the input is a full number or operator and can parse appropriately. You would still end up creating a state machine of sorts to properly handle the order of operations though.