Slashdot Mirror


User: MarcoAtWork

MarcoAtWork's activity in the archive.

Stories
0
Comments
809
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 809

  1. Re:Baloney on How to Recognize a Good Programmer · · Score: 1

    So you might be a great programmer - but you just don't write enough great code for me to hire you.


    I don't think I've ever in my career worked with anybody who was able to keep high output AND high quality AND all the time. In general the people who worked all the time spent a significant portion of their time fixing bugs they introduced due to not getting enough sleep etc., and people who had high quality in the end tended to be a wash with people with high output due to differences in the bugfixing/integration phase.

    If this was a PHB forum I would be expecting comments along the lines of 'who cares about quality', 'who cares about if coder xyz dies of a heart attack at 45 because they don't have time to work out or eat well and are always at work', 'let's outsource everything, have you seen how much less we can spend if we outsource to China' etc. etc. etc. but I would think that people that actually do work in the industry and have for a while have realized that today's outsourcing is yesterday's working new graduates to death, with about the same quality level for code produced etc.

    Hopefully you've made the transition to an architect role that is less demanding with better compensation...


    depending on the project I tend to wear both hats, I have done full-on architecture for several months in a row only in one case, and although it was very enjoyable (and we did a really good job, there were two of us) I still had fun actually implementing the prototype and selected parts of the final design afterwards. I am not sure I would be able to work as architect full time without ever writing any code, going from architecture doc to architecture doc, unless there was a sizeable amount of prototyping.

    Well, if they can make all those frameworks work, and well - what's the problem?


    because, if you have been in that situation, often you end up with code that works well for what you specified in 1.0, but that is basically unmantainable and unexpandable, and often unsupportable (when said framework is not the buzzword-du-jour anymore, you find bugs in it, and nobody is interested in fixing them).

    If you use anything that's not a well known 'standard' with an active development community, when you decide to write a product using it you basically also decide that you will be mantaining said toolkit/framework for the life of your application. If I am writing, say, a vertical app for a hospital to do certain things, most of the time the espected life of the application will be measured in several years, if not over 10 (I think my bank was still using an ad-hoc app written for OS/2 as recently as last year), which means that your framework needs to be able to cope with that, to be around for that long, or that you have to plan dev time to fix framework issues for a long time to come, with the risk that you won't find domain experts later on.

    Everybody can whip up quickly a throwaway demo/prototype with whatever framework-du-jour is going on: if this is all you need to do, go ahead, hire some teenagers to whip it up for you, give it to some of the junior programmers so they can get some experience, but if you need reliable, mantainable, extendable, quality code, I do think you'd be better served to hire people with qualifications, experience, social skills and so on.

    But then again nowadays a lot of people just look at cost and are not willing to spend enough to do things right the first time around, only to end up with software much much much worse than it could be. When you see companies not batting an eye about spending $X dollars on marketing schwag and having their devs work in windowless cubicle farms like rats in a cage you can guess where their priorities are: from this perspective Joel Spolsky has it down right, with his advocating for single offices, nice monitors and all the things that make working easier and more productive. This is also why I sometimes wonder about google with their insistence on open plan, but anyways, we're going OT here.
  2. Re:Baloney on How to Recognize a Good Programmer · · Score: 1

    Rule #1, an ego doesn't make you a good programmer. ;)


    I agree :) on the other hand false modesty doesn't make you good either: I know I am definitely not the best coder out there, however I also know I am definitely good, as evidenced by my career path, reviews, you name it. Believe me, I cringed a bit when I wrote that, but at the same time pretending I suck (when I don't) would not be good either...
  3. Baloney on How to Recognize a Good Programmer · · Score: 5, Insightful

    from the article, what's the #1 'negative'?

    Negative indicators:

    * Programming is a day job


    excuse me, I am a really good programmer, did the whole 9 yards growing up as a stereotypical geek (not into sports, into programming way before it was fashionable to do so, from basic, to turbo pascal, to z80 assembly etc.), I lived and breathed programming and computers for many years of my life, however now I am in my late 30s and I try to have a much healthier work-life balance, I don't see why this should be a negative at all.

    If I wasn't working at a computer dev job I would probably be coding a bit for fun, but there is no way that nowadays you could get me to talk shop for hours just for the fun of it.

    Also

    In fact, the great programmer will be the one talking your ear off about a new technology that you haven't even heard of, explaining to you why you must use it in your business, even if none of your staff knows how to use it. Even if it's a technology he doesn't know how to use yet.

    gimme a break, for me this would be a huge no-no, it would be the hallmark of somebody going after every possible latest fad, instead of focusing on proven tools for the job. Yes, there ARE cases where the bleeding edge is needed, but they are the exception rather than the rule: if I have a business I want code that is mantainable, and that, if the 'wiz developer' gets hit by a bus, is understandable by others (read, it's not such a niche skill that if I lose that person my business will fold because it's impossible to find a replacement).

    Good programmers will have a tendency to talk your ear off about some technical detail of what they're working on (but while clearly believing, sincerely, that what they're talking about is really worth talking about). Some people might see that as maladapted social skills (which it is), but if you want to recognise a good developer, this passion for what they're doing at the expense of social smoothness is a very strong indicator.

    this is another totally bogus criteria: in nowaday's workplace soft skills (being able to work as a team expecially) are just as important; gone are the days of the single programmer in his ivory tower producing code that only himself can understand. You need to have a team, and if I have to choose between person A who is, say, a programmer worth 100/100 but has 0 social skills, and person B who is, say, worth 80/100 but gets along with everybody, I will choose person B every time. A gelled team is greater than the sum of its parts, but you can't gel a team full of primadonnas and socially maladapted people.

    If you are such a 'smart' programmer you will realize that 'programming' social interactions is as important as programming computers, and you will apply your skills to that as well, making your workplace a lot better and likely improving drastically your career prospects.

    If you're hiring for a small business, or you need really smart developers for a crack team that will implement agile development in your enterprise, you should disregard most formal qualifications as noise.

    give me a break, being smart and having no formal qualifications is a lot worse than being smart AND having formal qualifications. I have a M.Sc. in Electronic Engineering: have I used anything I learned in university in my career? Not at all. Have those years broadened my horizons, introduced me to a lot of different concepts and methodologies that made me a much, much, much better programmer than I was before? You bet. Your 'crack team in agile programming' will likely end up implementing something O(n^3) (because they have no clue about computational complexity) while your university educated buzzword-averse reliable programmer will give you O(n^2) or even O(n log n) because they've been there and done that many times before in a lot of different other contexts.

    THESE to me are the signs of a great programmer, experience, good grasp of architectural con

  4. weren't we just complaining a few weeks ago.. on NSI Registers Every Domain Checked · · Score: 2, Insightful

    ...about domains being tasted by spammers etc. that then would try to sell them to you at inflated costs?

    In some ways this is a lot better, so if I have an idea for a domain, go register it at NSI, get sidetracked, go back the next day, the domain would still be available and not stolen by somebody sniffing the whois traffic etc.

    As long as network solutions is upfront with this practice I think it could definitely be spun as a positive vs a negative (check a domain here and you can be sure that you'll be able to register it for up to 5 days after, instead of risking it being stolen or held for ransom).

  5. that's some interesting math right there... on Comcast Promising Ultra-Fast Internet · · Score: 3, Insightful

    4 minutes would download about 4.5 gigs, which is basically DVD quality... of course you can upconvert this to whichever HD resolution you want, but it's still going to look like crap compared to a 'proper' 30-40 gigs encode. OTOH having something that could d/load a blue-ray/hd-dvd level encode in less than an hour would be pretty good, but in any case the odds of getting that kind of transfer speed connected to a real site are pretty low IMHO.

  6. Re:War would have ended if HD-DVD shipped in Elite on Toshiba Execs Declare HD DVD Not Dead Yet · · Score: 1

    that's what I mean: I don't think MS cares about games being on blue-ray/hd-dvd, the add-on is purely for movie watching, so games will continue to ignore it.

  7. Re:War would have ended if HD-DVD shipped in Elite on Toshiba Execs Declare HD DVD Not Dead Yet · · Score: 3, Insightful

    A little less clear, but I feel just as certain victory would have Microsoft include HD-DVD with the Elite model.


    why would microsoft care? They came out with a cheaper console, have a lot more market share (and better games) for now, and since hd-dvd has lost I bet they will come out with a blue-ray add-on for the xbox before the end of the year. Sony bet everything on blue-ray, MS just stood on the sidelines and focused on the console and games, without caring too much about the blue-ray/hd-dvd angle, knowing that no matter who won they could come out with an external player without risking being on the losing side.
  8. Re:Pissed off consumers on Toshiba Execs Declare HD DVD Not Dead Yet · · Score: 1

    its easier and cheaper to just download HD content


    let's see, the average cable subscriber gets 100 gigs/month, which equals about maybe two-and-a-half movies, and to download one of them, let's say 35 gigs, it would take about 50 hours at 2mbit (about the average speed of a lot of cable customers), hmmm, easier and cheaper? cmon, give me a break, until we all have 100mbit fiber in the house with 5-10 terabytes of cap/month it's not going to happen.
  9. Re:I don't see the vista hate on PCWorld Says Firefox is Strong, Vista is Weak · · Score: 1

    I wouldn't pay $400, you can buy an OEM license for $185 for ultimate around here when it's on sale (215 otherwise)

  10. I don't see the vista hate on PCWorld Says Firefox is Strong, Vista is Weak · · Score: 1

    I recently installed vista ultimate 64bit in trial mode on one of my PCs and it's light years ahead of where XP SP0 was, I personally don't find UAC bothersome at all (it asks for permission only for things I like it to ask permissions for) and the PC has been super solid since day 0 playing games (tf2, crysis demo, etc.) and trying things out.

    Yeah, my pc is a bit above the minimum requirements (quad core, 4gigs of ram, 8800gt 1gig, etc.) but in dollar terms a PC that could run XP well when it came out was more expensive than what this PC cost me today. If things keep going this way I will surely buy an ultimate license when the trial period ends.

  11. Re:Rushing to defend PSP on Adobe Quietly Monitoring Software Use? · · Score: 1

    don't forget the upgrades to bridge, those were worth the CS2 -> CS3 upgrade price alone for me (and that's saying a lot, given how much the upgrade was!).

  12. Re:What's the point here? on CES Scorecard 2007 - What Came True; What Didn't · · Score: 4, Interesting

    #1 hdtvs in stores (and sometimes in people's houses) OFTEN are displaying SD material, also often the ones that are displaying HD are running some sort of store loop with horribly super saturated colors and sometimes crappy compression. If you want to see what an HDTV can do try to get one with a hooked blueray or hd-dvd player playing a hidef movie with a good transfer.

    #2 1080p = 1920x1080, 1080 is the vertical resolution, not the horizontal. Also 108" is for people who want to sit 10' or more away from their TV, I doubt they'd sit at 2' away like you would on a computer monitor...

    I suggest you document yourself a bit more on things before thinking that HD is all hype or marketing.

  13. Re:https://www.easywhois.com/ on Domains May Disappear After Search · · Score: 1

    I meant verisign, sorry (things have moved around since I used to work in web hosting in the late 90s).

    http://www.verisign.com/information-services/naming-services/com-net-registry/page_001052.html

  14. Re:https://www.easywhois.com/ on Domains May Disappear After Search · · Score: 1

    as the whois query the registrar sends out will be unaffected.


    I'd think any competent registrar would be getting the big zip files from network solutions and do a completely internal look-up, leaving the 'real' whois to be done only right at the moment the order form tries to register the domain.
  15. Re:Yahoo?? on Google Reader Begins Sharing Private Data · · Score: 1

    So you don't mind Yahoo pasting spam into your outgoing emails?


    actually I pay for yahoo email (the fee is quite reasonable, and less than it would cost me to host a domain) so there is no spam in my outgoing emails.
  16. Re:I never "got" GMail on Google Reader Begins Sharing Private Data · · Score: 1

    I've kept my own domain and use it for e-mail.


    good luck if for some reason your registrar has a hiccup and a squatter registers your domain... as things stand now I prefer having my email on yahoo/google than on a personal domain just for this reason.
  17. Re:Blech! on Duke Nukem Forever Teaser Released · · Score: 1

    given the graphic quality of the teaser I thought that was kind of obvious, and not in a good way (cue crysis etc. comparisons)

  18. Re:Start menu has always sucked on Vista Named Year's Most Disappointing Product · · Score: 1

    apropos viewer


    apropos/man -k are nice, however they give you only the installed applications on your machine: I don't remember the k* application I have found to do what I wanted (I just aliased it to xv, which is what my fingers tend to type when I want a command line viewer, due to many years of using it) but it wasn't installed on my machine by default, yum search found it, though, fortunately.

    Also to all the people telling me to look in the menus: I was looking for a command line picture viewer, hence my ls /usr/bin/k*, and in any case even if you go by menus you tend to get things like 'Graphics-> (bunch of non descriptive names starting with K or G' which means that you need to try each one of them in turn to figure out what each one does (for example, if you didn't know beforehand, would you know what kuickshow, kooka and gimp are?)
  19. Re:Start menu has always sucked on Vista Named Year's Most Disappointing Product · · Score: 3, Insightful

    It's hard to find a specific program, and when you are looking for a program to do a specific task, you have no idea how to find it


    I think you have about nailed the description of linux on the desktop, with 1325134 programs that start with the letter K or G followed by names that do not have anything to do with what the program is about (konqueror/internet explorer, krita/photoshop, amarok/windows media player, need I go on? Aren't the names on windows just a tad more descriptive/obvious?).

    I swear last week I had to resort to using yum search to figure out just which k* program was a no-frills command line picture viewer because doing an ls /usr/bin/k* gave me a ton of stuff I had no clue what was for (and I have been using linux since 1993, so it's not like I am a new user). If the linux devs used simple boring names like ksimplepictureviewer or kphotoeditor or kinternetbrowser it would be a lot easier, but no, application names in linux make perl look like self documenting.
  20. This would be so easy to fix on Your Ex-CoWorkers Will Kill Facebook · · Score: 1

    and in a cool way as well (I thought about coding something like this in my spare time, otoh at the moment I have very little of that).

    ------------
    First of all every account is allowed as many profiles as they want, every profile can be completely different, and tagged with a descriptive name so you know what it's about ('work profile', 'ex's profile', etc.)

    Every profile also has a 'trust value', the higher the trust value, the more you need to trust people to show this profile.

    Every user has a trust value as well, if the user is in multiple groups they will be presented with the profile they have the most trust for (say, if you have a coworker whom you also play poker with every now and then, but that you don't really trust as much as others, you could have them in both groups BUT they'd still see your 'work' profile)

    Your admin interface is a big field divided in sections/shapes based on how many profiles you have. Every 'friend' in your network is a little square with their picture, you can drag your friends to different 'groups' on your 'profile desk'. If your friend is in multiple groups, you can right-click-move them where you get a windows-like 'move here or create shortcut here'
    -------------

    this would let you solve all privacy issues in a very user friendly way, and I also bet people would get really into rearranging their friends, creating groups and shuffling people around, and so on. If a user had thousands of friends, the interface also would create 'stacks' (which would be easier to move) etc. etc.

  21. Re:OpenFiler on Best Home Network NAS · · Score: 1

    If anything in that box craps out, including the controller, I can take the drives and recover the data.


    uhhh, no, a good friend of mine last week had his PSU crap out, and not only it took down the motherboard, it also completely fried both of his HDs and since he was not a believer of offsite backups he's now SOL and has lost 5+ years of photos and other irreplaceable things.

    I ran a RAID-1 setup until about 2-3 months ago, where due to a windows crash I powered down and rebooted, only for the hardware raid-1 card to decide that the raid was 'unrecoverable' and start filling drives with 0s. FORTUNATELY it started doing so one hd at a time, so by the time I figured out something was not right and powered down, I could still get to the unfubar'd hd and recover the new data since my last full backup.

    If I had 500GB of storage off-site I'd rsync to there instead.


    with prices of HDs and enclosures so low, do you really lack ~$150 to have a usb2 enclosure you rsync to once a month and keep offsite? (at work, in your safety deposit box, wherever). If you're not worried about burglars but just about data integrity you can just leave it connected to your box and rsync there every couple of weeks, leaving your usb cable unplugged in the meantime.
  22. Re:And all because they pooched their architecture on World of Warcraft's Brand New Rootkit · · Score: 1

    The server has to have some rules for how to settle some cases, but a happy intermediate can be decided.


    when you are done implementing a complex networked game (mmporg or fps) and have had to deal first hand with all the various corner cases that could happen, and with making the experience both pleasant and fair for your players, and reasonably secure/cheat proof, come back here and report: saying 'some rules' to settle 'some cases' and 'happy intermediate' is just like somebody saying that 'yeah, you can pour some concrete and put in some rebar and you'll have a skyscraper'...

    If you want to try your hand at things just download one of the quake sources, completely rip out the networking stack and reimplement it from scratch, then get some friends or post on some messageboard that you need beta testers, and have fun!
  23. Re:And all because they pooched their architecture on World of Warcraft's Brand New Rootkit · · Score: 1

    Perhaps this wouldn't be easy, and perhaps it would be much cheaper to use something like Warden, but I think it would work.


    that is quite an understatement: if warden has an issue, well, warden might terminate and restart, no big deal, but if you have client code having issues, the customer will surely be impacted!

    It is already extremely difficult to QA a game the size of WOW, how would you QA it at all if significant portions of the client code were dynamically generated and different every single time? Unless you did a very 'simple' dynamic generation, where you just shuffle precompiled blocks around (which of course can be broken super easily) it would create a huge other amount of headaches for your customer base.
  24. Re:And all because they pooched their architecture on World of Warcraft's Brand New Rootkit · · Score: 1

    you really didn't get my point.

    If you have the client saying 'I move forward' it means that if the client has a 500ms latency, theoretically you would have the user wait 1 full second before they had feedback that their action has succeeded. Or assume the client has a small network hiccup that causes 2 seconds lag, in this situation then the user would likely be force-warped back when the server catches up (no dead reckoning in fps, remember?). These are completely unacceptable for any sort of dynamic gameplay and this is why a lot of things are done client side for games that need to work in a high-latency environment.

    And regarding your processing power comment: in any case you STILL have to run the simulation on the server side to double check your clients are doing the right thing, to do some predicting and other things, so there is no saving whatsoever. This is also why, as far as I know, pretty much no MMOs have physics play any significant part in the game, as if you had 1000+ clients going around and smashing things and you had to calculate all that on the server also (to make the semi-destroyed world appear correct to the clients that weren't in LOS when the event happened) then it would become impractical.

  25. Re:And all because they pooched their architecture on World of Warcraft's Brand New Rootkit · · Score: 1

    A few years ago I had an idea for a cheat prevention system that would allow the client to be trusted without forcing Warden/VAC/Punkbuster-style spyware on the player. Instead of sending a cheat detection program to each player, why not send part of the game: say, the part that enforces the rules on the client, and communicates with the server? Like Warden, this could be generated randomly for each connection to make reverse engineering difficult (and also obfuscate the network protocol).


    the problem is that regardless of this there will always be data coming back from the client, and that's the data the people are up to no good are going to hijack/modify: it doesn't matter if every client runs something different when in the end they send back to the server the same packets...

    Yes, you could prevent other attacks like people modifying your game code in realtime overwriting memory to change your location etc., but that's about it, unless you were able to also 1) secure the channel going back to the server (some sort of dynamic vpn-type solution with different keys being inserted in your downloaded game code?) 2) make the game code so different between each dump that it wouldn't be easily reverse-engineerable (difficult as well).

    Until you have wow running as a separate vm under a hypervisor 'above' your windows install I doubt there will be a way to secure it completely while also allowing the client some latitude (of course assuming the hypervisor won't have holes of its own). That or ditch your high latency customers and have clients be completely dumb and run everything on the server (which of course is not going to happen) :)