Luke Kolin

Ranch Hand
+ Follow
since Sep 04, 2002
Cows and Likes
Cows
Total received
0
In last 30 days
0
Total given
0
Likes
Total received
35
Received in last 30 days
0
Total given
1
Given in last 30 days
0
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Luke Kolin

Tim Moores wrote:This takes it a problematic step further, though, as contributions to some political organization would likely be indicative of voting behavior - which is supposed to be secret.



It's as indicative of voting behavior as speech. You are guaranteed a secret ballot, but if you choose to breach that secrecy by public expressions (such as speech, an election sign, volunteering or donating) that's your choice and isn't protected at all.

Cheers!

Luke
3 years ago

J. Kevin Robbins wrote:I've never noticed anything like this before. Is this becoming the norm? How can they legally use your political contributions to determine employment eligibility?



If it's a government regulated company (as insurance companies are) there may be laws preventing their employees from making certain types of political donations. If not, political affiliation isn't a protected class, at least in the US.

Cheers!

Luke
3 years ago

Jayesh A Lalwani wrote:On the other hand, your job in a Microsoft ecosystem is easy: You use the tool that Microsoft gives you, and you know everything will work together. If the tool doesn't do what you want it to do (or makes it difficult), you shrug your shoulders and say something about technical limitations or such. You can squarely put the blame on Microsoft's shoulder and Microsoft is more than happy to take that blame. They get a good excuse to sell your company the next version of Visual Studio.



This is only true when it comes to the IDE itself. There are plenty of third-party libraries for a Microsoft ecosystem. Some are open-source.

If you are in a Microsoft stack, you aren't competing with other companies like you on the strength of your developers or technology choices. You are competing on how well you can manage your projects.



That's a great recipe for failure. The biggest single determinant of success in any environment is the quality of your people and the tech choices they make.

Cheers!

Luke
4 years ago

Jayesh A Lalwani wrote:I see being able to design good software as a skill that is orthogonal to converting design into code. You don;t need a 4-6 years degree from an engineering school to write good code. You need that degree to do design and solve problems. We need engineers to do the design.



I disagree on design, but I do agree with you that you a degree doesn't necessarily create great coders. Having an understanding of the theory behind computers can make one a better coder and designer, but not necessarily. And it's also not the only way to gain such knowledge. I also disagree that one requires an engineering degree to do design. I've seen some fabulous software architects who had no formal education in the field.

We need coders to do the code. Right now, we take engineers and all they do is code, which is a big waste of their engineering degree



Why do you make an arbitrary distinction between "design" and "coding"? To me, there's a continuum and anyone too far on either end is likely to yield poor results.

As Tim and I point out, if the work is so mindless and requires so little thought, there shouldn't be a human doing it at all. From my own experience, a freshly minted engineer is next to useless and shouldn't be left alone - they require experience doing a lot of low and high level work to truly understand the effects of their designs. My best experience (although I hated it at the time) was dealing as a "coder" with an Architect overly focused on theory and really bad development practices, because it served as a warning not to be "that guy" and to always see the practical impacts of my designs.

I'm talking about engineers focusing on solving the hard problems and doing the design while coders do the grunt work Right now, I can have a developer bang out a REST service using Spring pretty easily. I can have another Java script developer consume that REST service produce a good looking UI.



You miss the point. Sure, you have code that emits and consumes data. Does it scale? Has it been implemented in a way that makes sense, is secure and doesn't cause unnecessary traffic under load? Jayesh, I've interviewed dozens and dozens of "coders" who can faithfully implement whatever services I specify and then are completely befuddled once they get a dozen concurrent users and the whole thing falls over. The amount of effort an architect requires to avoid all that isn't worth the time and energy - you need implementation teams that can do design as well as following specifications.

I, as an engineer, can focus on the design aspects, the DB design, designing the interfaces between the UI and the REST service, sizing out the architecture for scalability and efficiency, etc, without writing a line of code. I can do all the "figuring out". I use engineers to bang out this code. Why do I use engineers? Because that's what is available. These guys can do a lot more. It's a waste of their education. I could use coders who are trained in bootcamps to do the same job.



I'm curious - what's the scale of the systems you design?

Right now, in the IT industry we train people to be construction engineers and then ask them to do plumbing jobs. Then the engineers cannot do plumbing jobs because they haven't had too much experience swinging a wrench in school, we send them to wrench-swinging "bootcamps". Then people who have never gone to construction engineering school show up and learn how to swing wrenches as well as the engineers, we sneer at them because that's the only way we can justify the education loan.



Here I agree. The most successful organizations avoid credentialism - they've learned that education is orthogonal to talent and tend to ignore it. The best talent tends to avoid places that focus on credentialism too much.

Cheers!

Luke
4 years ago

Jayesh A Lalwani wrote:I think there are pros and cons to this. Bootcamps might teach you how to bang out code. They can't teach you how to do it the right way. They can;t teach you how to design. They can't teach you how to write maintainable code. More importantly, they can't teach you how to learn. The biggest advantage that a CS related university degree gives you is that it teaches you enough fundamentals that you can start self-teaching after college.



I don't believe a CS degree fills these gaps, either. They're very theoretical and focus very little on what it takes to write "good" code, and more on how computer hardware and software systems operate.

What we need is people who can bang out code, which is what bootcamps provide.



I disagree. We need people who can write good code, and there's a tremendous shortage of those types of people. It takes more than just framework authors. For 20 years we've been talking about mechanisms that allow non-coders to write good code, and we're no closer to solving that problem. People aren't very good at breaking problems down into discrete logical steps and optimizing them - that's true with processes in general, not just software.

We have plenty of engineers who do technicians work. Seriously, do you need a 6 year degree to write a CRUD web app? If all you do your entire life is make CRUD web apps in one language, then your 4-6 year degree is a waste. A kid could do that after attending a 3 month bootcamp in web development!



Sure, if your CRUD app has 20 users. I saw a lot of developers who wrote functional code that completely failed once it had any appreciable levels of load or concurrency.

S/he may not know how everything works, but is able to put things together, in much the same manner as your plumber may not really know what went into the design of your plumbing, but can put a sink together.



Are you suggesting that there is no practical difference in skill between an experienced and novice plumber?

I think bootcamps are good. They generate coding monkeys. Coding monkeys are good. They allow engineers to focus on the bigger picture.



Coding monkeys are awful. If the task doesn't require thought, it should be automated.

Cheers!

Luke
4 years ago

Jayesh A Lalwani wrote:some of the requirements didn't make sense. I asked the manager, and she said "Oh they guy we are trying to replace has these qualifications, so I put these things in there". She wanted someone exactly like the guy who had left, so she took his resume and turned it into a job requirement.



This is the sign of an inexperienced or poor manager.

Every organization has people fulfilling unique combinations of roles. It becomes more unique and complicated the longer "Bob" was at the org. To try and get another "Bob" is crazy - it's exceptionally unlikely that you're going to find another person exactly like "Bob" right now; and the manager probably doesn't realize that her requirements would likely exclude the younger "Bob" when he started doing that role!

A job requisition to me is as illustrative as a resume; it gives you an idea whether the hiring manager has some clear goals and ideas for what they want and recognize that people are going to grow into the role, or whether they are ticking boxes and/or hoping for a magic unicorn (who only poops a specific shade of glitter) to fall into their lap.

Cheers!

Luke
5 years ago
While HTML5 may have formally ratified only 2 months ago, it's been around in draft form for almost a decade.

Cheers!

Luke
5 years ago

Jan de Boer wrote:But, I had a year contract. I had a talk. The present year contract will be finished on the 15th of July. I heard criticism, and I now got a half year contract. (Until January 2015) My reaction, emotionally perhaps, but, I am going. That is the first conclusion. My only doubt is, should I go now, or after half a year?



Why?

You had an evaluation, you got some feedback. If they didn't want you or thought the issues they did not like were unsolvable, they would not have renewed your contract. It looks to me like there's some time to address the concerns they have.

Do you feel their criticisms are justified? Are you willing and able to address them? If not, then it makes sense to go. But I am puzzled why at the first hint of criticism you want to go. In earlier postings you said that the job was okay and technically challenging.

I am actually pretty sure that after this contract they will fire me.



If they wanted to fire you, they would have done so already. Why are you attributing motivations to them that are directly contradicted by their actions?

I know this is subjective, but, if you had a year contract, they should at least offer you another year contract.



I don't know where you get this idea. They may not have budget. They may want to see if you correct the issues that they pointed out to you. Maybe they want to make you a permanent employee - the point is that there's a range of possible reasons why you're getting a shorter term, from bad to good. And there's no such rule that suggests what length an extension should be.

This together with the criticism, make me conclude that I should go. The other bad thing here, is that I am not really a success story lately.



Again, are the criticisms valid and can you address them? If you can, then you have a future if you want it. If you can address them and choose not to, then who's to say you won't have the same problems in the future? What will you do then.

And I already got two rather short stays.



Almost ten years ago. Ancient history. I'd be more concerned with today and how you address adversity.

Cheers!

Luke
5 years ago
Part of what drives some of these is the "Bob Replacement" ad. Bob starts working at a company, doing X. Over time, he picks up some different skills and tasks and is doing a little bit of everything. Then Bob decides to leave, and the company puts together a list of everything Bob was doing and combines it with his starting pay and experience.

Then they wonder why they can't find anyone.

Cheers!

Luke
6 years ago

Jan de Boer wrote:I state that English spelling rules are that ridiculous, I think at least a few errors can be ignored.



I think if you're claiming "fluency" in a language, you should not have any errors in common words. Especially since machines can identify potential spelling or grammatical issues.

I look at it this way - I find the notion of nouns having a specific gender somewhat ridiculous. However, if I was claiming fluency in French I would certainly ensure that I applied the proper gender in my French resume (if I had one).

Cheers!

Luke
6 years ago

Jan de Boer wrote:But the thing is that you either 'go' or 'no go', also towards the candidate. You do not plan a second interview three weeks later, and then three days before that interview you say: 'Hey, we just talked about your application internally and decided not to invite you for that already planned interview'. I think it's not well organized. Talk about the first interview internally first, and then 'yes' or 'no' invite me for a second.



There could be a variety of issues. Maybe they changed their mind about you, maybe they had another candidate they were interviewing that they liked a lot more. Who knows? Again, no point to worry since you'll never know the answer.

Also, I am not sure how it is in your country. But I have never had a second interview without a job offer. So having a second interview for me, normally means a really high chance of getting hired.



I understand the disappointment, but it's difficult to apply past patterns to future or present events. People may have a different style, or there may be other factors at play that you don't know about. Point is, you may need to kiss a lot of frogs to find your princess employment-wise so it doesn't help to take anything too personally.

Cheers!

Luke
6 years ago
Why are you getting so angry?

I start to wonder if some of this is coming across unconsciously in your interactions with potential employers.

Luke
6 years ago
Why are you so angry? You've had a few interactions with someone over 10 minutes and you're attributing arrogance, you're calling him a jerk internally and venting about it.

There's a lot of reasons people don't hit it off. Maybe the interviewer was unprepared or unfocused. You probably ran on too long (generally any time one person talks for more than a few minutes it concerns me). And obviously the interview didn't go well for either side. But there's no reason to get angry because it's likely to happen more than a few times.

Cheers!

Luke
6 years ago

Devaka Cooray wrote:Open source are not meant to earn money from them. People who contribute in open source do so with the prime interest they have in open source, and not as a way of making money.



Not directly, but there are plenty of people who make a decent living working on open source software, even if the software itself isn't directly sold.

Cheers!

Luke
6 years ago

Ram Nagaraj wrote:What I would like to do is handle a part of employee benefits myself say paid time off, medical insurance, 401k etc instead of allowing my employer to handle that so that I can demand a better hourly rate.



You will find that for some of these (medical and 401K) there's no point to forgo this. You can simply not contribute to your 401K. For medical, while most places will give you a small amount of additional salary in lieu of benefits, you will discover that this is far less than how much the employer was contributing, and you are forced to use after-tax dollars to buy your own policy rather than pre-tax dollars when obtained via your employer.

As far as taxes are concerned I want employer to take care of that (say fed/state/city social, medicare etc...)



You have no choice, being on a W-2 basis. They will do this no matter what.

So keeping this in mind what is the billing rate one can expect for a senior developer position?



Where on the East Coast? NY or Boston are more expensive than Charlotte or Orlando.

Cheers!

Luke
7 years ago