938 reputation
916
bio website waynewerner.blogspot.com
location Greenwood, AR
age 29
visits member for 3 years, 10 months
seen Jun 12 at 13:39

I'm a husband to my beautiful wife, father to our children, Computer Science graduate from University of Central Arkansas. I love my wife, our children, computers, playing guitar (especially singing/playing for my wife and/or kids), bicycling (including taking my kids for rides in my bike trailer), woodworking, airbrushing, digital and traditional artistry, playing games with my family (traditional and digital), my poor Chevette that I had to sell, throwing knives, firearms, knot tying, rope making, whip making, and really just learning new stuff in general. If I don't know about it I probably want to learn about it, if only so I can make informed decisions about it.

My three favorite programming languages are Python, Lisp, and Assembly (though I'm not sure about the order of those last two languages...), and I currently develop in .NET languages, especially VB.

I think the CANSPAM act is one of the dumbest pieces of legislation in the history of the universe

Code I can write/read (where 1 is just barely, 3 is the average user, and 10 is the language designer/guru level):

  • Python - 6/10
  • C++ - 4/10
  • Perl - 3/10
  • Assembly - 3/10
  • HTML/JavaScript - 5/10
  • VB.NET - 5/10
  • C# - 5/10
  • Befunge - 2/10


Nov
17
comment Cost of maintenance depending on paradigms
You mean segments of unstructured programming scattered throughout your code? My young experience (having now 1.5 years of professional programming under my belt) echoes what I wrote. Any amount of deviation from <insert sensible paradigm here> will cause horrible maintenance issues. When I look back at my own code, I can tell you where I deviated because I really have to think and figure out why the heck I did something. When you have and adhere to good standards, code comprehension is as easy as it possibly can be.
Oct
12
comment How do you make people accept code review?
Our code is so horribly inconsistent it's embarrassing.
Oct
12
comment How important is positive feedback in code reviews?
I wish we did (real) code reviews at work. The few things I've done, I've found that approaching them as more of an educational opportunity helps.
Sep
27
awarded  Booster
Sep
23
awarded  Popular Question
Sep
22
awarded  Announcer
Sep
9
comment What are the drawbacks of Python?
I don't think that 42 (or is it 43?) keywords is a 'large' number. That also includes things like def, class and other non-function calls. Compare that with 100+ in most other popular languages. Also, consider the line from import this: Namespaces are one honking great idea -- let's do more of those!. I think you might misunderstand Python namespaces ;)
Sep
1
awarded  Yearling
Aug
27
comment Tabs versus spaces—what is the proper indentation character for everything, in every situation, ever?
@JordanReiter, Not so - with my example there is no visual difference to one coder. Copying 3-space code into a 4-space code immediately looks wrong without some type of whitespace visualization (and if there isn't, I suggest that programmer needs to start using a monospace font ;)
Aug
8
comment Preferring Python over C for Algorithmic Programming
This is my take on it: plus.google.com/101996847784434186165/posts/7941QuL69yP
Aug
8
comment Teaching kids to program - how to teach syntax?
+1 for the article on PHP. I've read it before and it made me sad that I ever used to say that PHP as a language was just fine.
Aug
8
comment Teaching kids to program - how to teach syntax?
+1 for the cheat sheet. Honestly, that's how I program in languages that I'm not familiar with (or, using Python, with functionality I'm not that familiar with since I don't get to use it full time :( - I use the Python documentation as a cheat sheet all the time. Now that I think about it, I also used cplusplus.com all the time when I was in school. That may be the most valuable tool you can teach them - how to Read The Fine(!) Manual.
Aug
8
comment Teaching kids to program - how to teach syntax?
Teach them Python - When you can write your first program with print("Hello World"), it's hard to get any more simple than that. Plus the fact that you program in basically any idiom (functional, OO, procedural), makes the language great for a first time.
Aug
8
comment Do I need to use an interface when only one class will ever implement it?
@LaminSanneh, elaborated. Does that help?
Aug
8
revised Do I need to use an interface when only one class will ever implement it?
added explanation of interfaces
Aug
8
comment How big does my project need to be for me to unit test it?
There are at least two other types of testing - integration test, and acceptance tests. Unit tests cover a specific unit (e.g. this function of this class is supposed to Frab the Fizz). You mock/stub all the other places where that class interacts, passing it el fake-o data. When you do integration tests, you combine two (or more) classes to make sure that your classes go together the way you think they should. Eventually you build up enough tests that you're doing end-to-end testing of your entire system, sometimes known as "smoke tests".
Aug
8
comment How big does my project need to be for me to unit test it?
You shouldn't test everything, but you should test any behavior that's exposed to the outside world. There is/are certainly maintenance costs to testing, and as Kent Beck said in some SO answer (I think it was SO) - test enough to make you confident that your code is correct.
Aug
8
comment How big does my project need to be for me to unit test it?
1 line of code? ;)
Aug
8
answered Do I need to use an interface when only one class will ever implement it?
Aug
8
comment Do I need to use an interface when only one class will ever implement it?
@YannisRizos, even if they don't, I think I'd agree with Fabio about the non-violation of YAGNI. My personal opinion about developing in a statically bound language is that if you create a class, it probably needs an interface. The only exception (I've seen) is if the behavior of the class is actually part of another, interface'd class' API (e.g. a UserControl on a View). Then the tests against the interface should expose errors in the other class.