1,033 reputation
1724
bio website smith-li.com
location Philadelphia, PA
age 36
visits member for 4 years, 1 month
seen 17 hours ago

Pythonista; Dockerista; Pyramista; Plonista; Magentoasta; Javascriptista; CSSista; HTMLista; Webista; Shellista; you get the gista.

I am an employee of eBay Inc. The opinions expressed here are my own and do not necessarily reflect the opinions of eBay Inc. This is my personal StackExchange account.

Classic disclaimer.


Mar
27
comment Is the target of 3 dependencies per class always achievable?
Thus the "smell" analogy jumps the shark.
Jan
4
comment In need of a more technical answer for an interview question about how the internet works from beginning to end
Related: What Happens When
Jul
20
comment What are the key differences between Java's and Python's OOP support?
What you call "array" here in python is actually a list. Python doesn't have arrays ootb, but where implemented (numpy, for example) they are typed, albeit they can only hold primitives.
May
10
comment How are the skills used in typical interview questions applied in the real job?
I don't like it, but it's true. Sometimes you need to hire someone precisely because they should know more about a subject than you, so by definition you're underqualified to do the interview. You can't reliably get help even doing the interview for the same reason. The best you can do is try to ask questions based on wherever your understanding intersects with the problem domain and hope you get lucky.
Oct
21
comment Writing and Understanding code
One thing that will help you understand legacy code is writing tests for it. Plus (at least in my book) that would make you a hero.
Sep
14
comment How can I deal with a team member who dislikes making comments in code?
@GordonM I actually take exception to the implication that what I said was threatening, but anyway, I fixed it.
Sep
13
comment Where can I find an authoritative comparison of computer languages?
I have a book on my shelf called Seven Languages in Seven Weeks. I have never read past chapter 2. But maybe you will.
Sep
13
comment Where can I find an authoritative comparison of computer languages?
I would add Brown's online PL design course to your list. It's not a book, but it is centered around one.
Mar
2
comment How can I deal with a team member who dislikes making comments in code?
@GordonM Do you think it would be better not to tell an employee when his behavior is inappropriate, and what the consequences of continued inappropriate behavior would be?
Feb
22
comment Why do large websites use different languages for the backend and frontend?
If you really want to see the dark fringes of languages' strengths and weaknesses try parsing sgml/xml languages with shell tools like sed and awk. Or write fizzbuzz or a factorial calculator in xslt. :)
Feb
9
comment How can I deal with a team member who dislikes making comments in code?
@temptar A good coder is lazy, but they go for the minimum they can get away with without providing adding value? That's quite an offensive generalization to put on a site full of coders. A good coder is lazy because he's looking to reduce everyone's effort, not just his own. He's searching for generalizations that solve problems in a lasting way.
Feb
8
comment Should the variable be named Id or ID?
Would you name the variables EGO and SuperEGO? I didn't think so. ;)
Feb
4
comment Why does automated testing keep failing in my company?
@SkipHuffman With a complex stack on an integration platform, many new devs come in not understanding how to run tests. If you don't have CI in place, your first step is to teach devs how to run tests and how to write tests appropriate for the platform. If you have CI in place, they can learn from existing infrastructure, and you can focus on teaching them higher-level concepts like why various design decisions were made. No human can consistently demonstrate the value of testing to the entire team as well as CI.
Jan
28
comment Version control: Dealing with incomplete/broken code
@jk. yes, I didn't really mean agnostic to DVCS, I meant general to all version control systems. Updated.
Jan
28
comment Version control: Dealing with incomplete/broken code
The winter storm was just an example. It happens quite regularly that (at least senior) devs need to relocate while code is incomplete. It's also useful for junior devs to be able to push code to a shared location for help and review.
Dec
10
comment Can I (reasonably) refuse to sign an NDA for pro bono work?
To be sure, I'm not arguing or asking about whether the NDA request is appropriate (of course it is). I'm simply asking if I should keep working on this project for free after creating a legal obligation for myself.
Dec
10
comment Can I (reasonably) refuse to sign an NDA for pro bono work?
For more discussion about the appropriateness of this question to P.SE, please see this meta question.
Sep
29
comment How can I figure out if programming is right for me?
@allquixotic I disagree with that – if you feel the need to stick to where programming is easy, then you probably don't like learning enough.
Sep
18
comment What problems can arise from emulating concepts from another languages?
@MainMa I hear you, but to find a job where I wouldn't have to write JavaScript I would have to pin myself down to backend or not work on the web. I guess I prefer JavaScript to those alternatives. (Besides, I don't need to emulate class-based OOP, I just make fun of those who do.)
Sep
18
comment What problems can arise from emulating concepts from another languages?
you should maybe choose another language... except when you don't have a choice, such as client side JavaScript. (Even so, having no choice is no excuse for implementing class-based OOP emulation in a prototype language. It's far more efficient to just learn how the language works.)