|
a foolish pianist posted:We make sure never to push anything new on Friday, even. Friday or after 4pm! Which has the common joke of, "We can only push after 4pm on Fridays right?" when product people inevitably want to push something out this moment.
|
# ? Jul 3, 2016 14:18 |
|
|
# ? May 13, 2024 11:17 |
|
a foolish pianist posted:We make sure never to push anything new on Friday, even. Most of our deployments happen during the week. Unfortunately this one required a few minutes of downtime, so weekend it was.
|
# ? Jul 3, 2016 14:21 |
|
For us, weekends are peak traffic. The good thing about that is that planned outages or maintenances are during work hours... The bad (for those of us on call) is that unplanned ones are usually at 5AM on Sundays.
|
# ? Jul 3, 2016 14:53 |
|
My Rhythmic Crotch posted:You ought to just ask that question straightaway rather than beating around the bush about it IMO. Much more straight forward.
|
# ? Jul 3, 2016 15:54 |
|
Just put all the candidates in a room then put the interviewer in the middle and blindfold him. Spin him around a bunch then have him try to walk in a straight line. First candidate he blunders into and knocks over gets the job.
|
# ? Jul 3, 2016 16:09 |
|
Job interviews in some countries are done with all the candidates in a room together with the interview panel. That could get pretty awkward.
|
# ? Jul 3, 2016 18:17 |
|
Hughlander posted:Friday or after 4pm! Which has the common joke of, "We can only push after 4pm on Fridays right?" when product people inevitably want to push something out this moment. We are b2b so our customers work 9-5 weekdays in whatever time zone they are. So all our deployments are at night and usually on Friday night, so we have time to fix things if stuff goes wrong before Monday which is our biggest day. Yay.
|
# ? Jul 3, 2016 20:36 |
|
ToxicSlurpee posted:Just put all the candidates in a room then put the interviewer in the middle and blindfold him. Spin him around a bunch then have him try to walk in a straight line. First candidate he blunders into and knocks over gets the job. gather all the cvs in a pile and throw them upwards, whichever cv the hr person picks gets the job.
|
# ? Jul 3, 2016 21:02 |
|
I unironically agree
|
# ? Jul 3, 2016 21:18 |
|
The COO sent out an email earlier congratulating several people for getting promotions, along with a list of who got what. Just now, I heard a coworker congratulate one of the people who got promoted and she didn't know she got one, because she hadn't read the email yet. Whee! Also, a few people were promoted to a job title I hadn't heard of, so I asked what it meant and the COO asked why I wanted to know. Whee again!
|
# ? Jul 5, 2016 19:50 |
|
me: The new super cheap overseas developers we hired 2 months ago are producing approximately 10% more work but are taking up more than 10% of the previous team's time, it's a net negative so far. Here's the data. I suggest we higher a single top-tier developer and replace them. ceo: Sure! 10 minutes later... CC'd on email to another cheap overseas developer asking about his availability. me: wtf? ceo: It's a cultural thing. Demand that they do 10x more work. sigh
|
# ? Jul 5, 2016 20:00 |
|
Wanted: Top Tier Developer
|
# ? Jul 5, 2016 21:18 |
|
Wanted: Pie-in-CEO-face Thrower
|
# ? Jul 5, 2016 21:34 |
|
rt4 posted:Wanted: Top Tear Developer
|
# ? Jul 5, 2016 23:03 |
|
I was having a discussion with a developer, who's apparently in charge of a team of programmers, who was opining to me that he doesn't really understand the purpose of unit testing and thinks it's often a waste of time. Myself, I don't envy the people working for him.
|
# ? Jul 6, 2016 22:20 |
|
PT6A posted:I was having a discussion with a developer, who's apparently in charge of a team of programmers, who was opining to me that he doesn't really understand the purpose of unit testing and thinks it's often a waste of time. It's worse when it's the CEO who holds this opinion. There is a point in there, that it's an effort trade-off on effort spent writing and updating tests when your program changes vs fixing bugs because behaviour changed unintentionally, and that requiring tests reduces development momentum, but I've seen first-hand what the logical extreme is, and once the program gets big enough that it can actually do anything useful, development stalls because without tests everything is always broken.
|
# ? Jul 6, 2016 22:31 |
|
PT6A posted:I was having a discussion with a developer, who's apparently in charge of a team of programmers, who was opining to me that he doesn't really understand the purpose of unit testing and thinks it's often a waste of time. The senior developer on my team is precisely the same way, and it is aggravating. She complains about the amount of "useless code" it requires and I gotta either pretend the poo poo she's saying makes sense or get into a futile argument. And all this poo poo from someone who insists on having hours of meetings over weeks before any code is even written.
|
# ? Jul 6, 2016 22:34 |
|
Edison was a dick posted:It's worse when it's the CEO who holds this opinion. No, that's to be expected. I don't expect a CEO to really grasp why unit tests help, although in the long run she should be able to see the benefits. If a developer doesn't understand why they are good, I'd question his professionalism.
|
# ? Jul 7, 2016 07:35 |
|
Edison was a dick posted:There is a point in there, that it's an effort trade-off on effort spent writing and updating tests when your program changes vs fixing bugs because behaviour changed unintentionally, and that requiring tests reduces development momentum, but I've seen first-hand what the logical extreme is, and once the program gets big enough that it can actually do anything useful, development stalls because without tests everything is always broken. It's not just that everything is always broken. You can fix things that you know are broken. The real hell is all the poo poo that MIGHT be broken, and maybe you don't find out until a customer runs an end-of-month billing report and finds massive discrepancies. If you change something deep in the code base and it doesn't have excellent unit test coverage that defines its expected behavior, you can't have real confidence that you aren't going to break something, especially subtle things.
|
# ? Jul 7, 2016 08:11 |
|
For me it's quite simple: if you want to be truly agile you need some degree of continuous delivery, which means you need continuous integration, which means you need proper automated testing on all levels of the test pyramid. The only other options are that you're a god programmer who never makes mistakes or you have an endless supply of human testers at your disposal.
|
# ? Jul 7, 2016 09:26 |
I only discovered the joys of unit testing recently (early in this thread, I think) and I cannot concieve of the kind of mind that thinks "nope those are a waste of time". They've saved me so much time from manually testing, and it's so easy to know when you've broken something if you have halfway decent tests. There's a couple teams working on my current project, and one offsite team is incredibly lax in this regard, and it shows. They've become something of a running joke in the office, because you can be sure that if something's hosed on the main branch, it's because they put it in.
|
|
# ? Jul 7, 2016 13:55 |
|
My project has foregone writing tests in lieu of shoving more and more features into the app and it's just getting harder and harder to support over time. They actually wanna go to market with this poo poo I will die before my name is associated with a product that has SQL written inline in HTML.
|
# ? Jul 7, 2016 14:34 |
|
Pollyanna posted:My project has foregone writing tests in lieu of shoving more and more features into the app and it's just getting harder and harder to support over time. They actually wanna go to market with this poo poo Wait. What?
|
# ? Jul 7, 2016 14:42 |
|
Is this app like literally doingcode:
|
# ? Jul 7, 2016 14:50 |
|
As part of an ERB template, I mean. Not insecure, but still stupid. It's bad, but not THAT bad. I think.
|
# ? Jul 7, 2016 14:51 |
|
Pollyanna posted:My project has foregone writing tests in lieu of shoving more and more features into the app You write the tests while you write the features Of course that's easier said than done in an already lovely codebase
|
# ? Jul 7, 2016 15:39 |
|
Once you've gone the no-tests route it gets harder and harder to take time out and go back and do them. On my current project we had to do that maybe a year and a half ago. Stopped development for a few weeks and just wrote tests. Been keeping up with them since that. Obviously it was a big cost at the time and slowed us down temporarily. But since then it's saved a lot more time than we spent, and we've had higher quality releases going out. But I'm just preaching to the choir...
|
# ? Jul 7, 2016 15:49 |
|
I don't write tests as often as I should because I'm a lazy rear end in a top hat, but boy howdy are they useful and I should write comprehensive unit tests more often. The fact that someone would both not write proper unit tests and not think they're at all a good idea, or equally, that they do write unit tests and still think they're useless -- that's a big error in judgement.
|
# ? Jul 7, 2016 16:09 |
|
Our app just needs an overhaul. It relies on weird Rails form-and-partial-driven stuff for the UI. It would benefit immensely from a front-end framework to handle application state and fancy pants features that are horribly fragile when you try and do it via jQuery on initialization. I can't even elucidate very well exactly what is wrong with it. It's just overall crap and it won't be getting better anytime soon. Improving it would require herculean effort and I just don't have the capacity to put that in, the problems just extend everywhere.
|
# ? Jul 7, 2016 16:35 |
|
PT6A posted:I don't write tests as often as I should because I'm a lazy rear end in a top hat, but boy howdy are they useful and I should write comprehensive unit tests more often. During my last job, I found out that whether I will or won't write tests, very strongly depends on how much bullshit I have to jump through before the tests are up and running. We had a policy that anything shipping must have tests, and the time for making these was included in estimates. However, "development tools" didn't have to be tested and I was making one of those at the time. I actually had tests ready, but then found out, that tests had to be in different project. But to test from different project, tested functions had to be exported as a library... which would mean adding yet another project, to be compiled as a library and leaving the original project as a single file, that calls into the library, loving around with our build system (at the time, there was noone who knew WTF was really going on, later I ended up spending 2 months to unfuck our build system into something that was at least kinda sane, if you didn't look too hard) So there are no tests for anything written for that "development tool" and good luck if something breaks. At another time, I wrote unit tests for ~200 lines of homework code, because it was less work than copy pasting input and checking output once.
|
# ? Jul 8, 2016 13:20 |
|
Gounads posted:Once you've gone the no-tests route it gets harder and harder to take time out and go back and do them. It also depends on how testable your code is. If it's an old code base using stuff like queries in business methods and static methods, you need to do a lot of refactoring just to get tests working.
|
# ? Jul 8, 2016 13:31 |
|
I think I need to add a new task to my interviews. Here's a github repo with 3 branches, A, B, C Fork it, make a change to Branch B Merge in Branch C (and I'd set up a simple merge conflict beforehand) Create a pull request to branch A The amount of time I spend training people to do things like this is absurd.
|
# ? Jul 8, 2016 14:49 |
|
Added an environment configuration file, an autoloader, and one automated test to an old-style (aka bad) PHP application that our company depends on. May we have many refactorings and tests to come
|
# ? Jul 8, 2016 15:08 |
|
Gounads posted:I think I need to add a new task to my interviews. git hasn't been around and in widespread use for that long that you can expect everyone to just know how to use it, so if your job listing doesn't have git under must-know, then that's not a very fair question unless part of the process is letting them figure it out themselves with access to google.
|
# ? Jul 8, 2016 15:36 |
|
Guy asking a question on Experts Exchange: "Selecting a line, cutting, and pasting takes too long in Eclipse. Is there an easier way to move single lines around?" Me: "Alt-Up and Alt-Down." Guy: "Do you have to select the line first?" Ugh why wouldn't you just try what I said first it would take a tenth of the time! This is beyond just terrible programmer, right? Though an unwillingness to try things out is definitely a hallmark of terrible programmers. Edit: Meant to post that in the Terrible Programmer thread in YOSPOS. CPColin fucked around with this message at 16:43 on Jul 8, 2016 |
# ? Jul 8, 2016 15:41 |
|
Munkeymon posted:git hasn't been around and in widespread use for that long that you can expect everyone to just know how to use it, so if your job listing doesn't have git under must-know, then that's not a very fair question unless part of the process is letting them figure it out themselves with access to google. Not just git, but specifically GitHub.
|
# ? Jul 8, 2016 16:21 |
|
libsepol uses <sys/cdefs.h> I sent a patch upstream to fix it, but Jesus Christ, why are they using internal c library headers?
|
# ? Jul 8, 2016 18:13 |
|
ratbert90 posted:libsepol uses <sys/cdefs.h> Because it was the first Google result for the function/macro/type they wanted to use, maybe?
|
# ? Jul 9, 2016 03:25 |
|
Breaking the monolith - Salami style! As a proof of concept for MICROSERVICES, a team broke out an address lookup from our big blob of a backend system. This has a post code entry, address fields, and a button to do lookups. Finally it updates the address on a customer order when you click a button. They managed to break out 4 loving services for this nonsense, not including the existing postcode lookup via 3rd party! - Postcode entry + results list service (Full vertical slice - Including markup!) - Address entry service (Another full slice!) - Address updater service which spoke to a "legacy connector" - View aggregation service (take service output and combine into single view through jQuery HTML smashing) All talking through an in-client javascript message bus, except the updater which eventually updated the database when something was pushed to rabbitMQ. I can see the point of making it a single service that takes in data / spits out data but 4 services, including one dedicated to smashing together two service outputs seems ridiculous to me?
|
# ? Jul 12, 2016 11:01 |
|
|
# ? May 13, 2024 11:17 |
|
As a "proof of concept" it sounds like they proved they could do it. But why did they say they were doing this?
|
# ? Jul 12, 2016 18:33 |