We started using Agile in all of our development teams recently (software and non-software) and it’s been… interesting. I can safely say that we’ve implemented all of the meetings, but I’m not sure about the rest!
I have seen agile as a toolbox first and foremost. When I first introduced it at my then-job in 2008(?) it was via subversion (and I am not talking of the predecessor of git here). I had a boss I didn‘t get along with and he would just throw work at the team and the whole situation was quite bad. Nobody knew who was doing what, nobody reported anything and most of the time I just „wurstelte herum“ for days on end without accountability on either my end or the boss‘.
The whole team worked on several large distributed systems related to provisioning DSL modems. We were not only responsible for developing the code but we had to do a lot of hardware testing, we had to also help with the IT side of things and because the system had expanded rapidly we were struggling very much with the systems side while at the same time company wide projects were causing additional workload.
There wasn‘t really a work process to speak of, so when projects failed usually the last end in the command chain was blamed: devs (I still say that IT/development are just about the highest paying jobs where you are at the end of the chain with nobody else to blame).
It was really a bad place to work despite some very nice (and some very not so nice, but more of the former) colleagues.
In any case, I began by introducing a daily standup for the people who worked on the same system as I did, just so we wouldn‘t get in each other‘s way. Soon we asked someone who had been scrum master before to moderate our standup. Then at some point we invited the boss (whom we had defined as PO because that was the closest role match for him)….
For the daily, we soon introduced a (paper based physical) Kanban wall for our work, just to visualize for the people what everyone was doing.
Boss ended up appreciating getting a short daily briefing of what everyone was up to. We were still very much each working our own tasks… just added a bit of tracking and giving a daily report. An important part became listing blockers and what was keeping us from getting our work done.
Somehow after a few weeks of this I was able to convince the boss that we should do a planning meeting. He wasn‘t enthusiastic but somehow agreed to try it despite that.
And then we could start calculating velocity and thus we found out and were able to communicate clearly that half of our whole workload was not development but doing all the other stuff that was thrown at us daily and provided a base level of noise and destruction uhm meant to say distraction.
I got to give a talk on how we had successfully taken agile methods and put them to work for us in the current work environment with just a few tweaks and no big reorganization. After that the thing snowballed and more and more teams in our department introduced scrum.
At the end of the year, I was told I was going to get that promotion I had wanted for years. So I quit.
In any case. Agile is agile enough to adapt to a given situation. To me the point of agile is the communication and distributed responsibility. The team I am at right now is doing much more than that, they do actual agile style development with increments etc. they have implemented way more than I did at my first place. But it is absolutely not something that you have to do to begin doing agile (development) work.
Some of our teams are getting more out of it than others. We have some people who very much like to have a hierarchy and follow a process every time. This leads to fun situations like one person telling a (senior) colleague that they couldn’t pull tasks from the backlog to work on because they weren’t “in the sprint”, despite said senior colleague having run out of things to do that were “in the sprint”…
Sounds like the agile methodology might have been invented by George Orwell.
Actually, at the beginning a daily can feel a bit like someone is watching you too closely. It is one of the reasons some devs abhor the whole process because they prefer working in the dark and emerging only when they have completed whatever they were working on.
We don’t do dailies which I think if you ask an Agile purist means we don’t do Agile
Lots of good stuff in this thread, I will join in when I get a chance
I just got a “clacky” keyboard to use instead of the one on my work laptop, and it actually has made my life easier! At least my typing is a great deal more pleasant. Plus it sounds better too.
Addendum: I also learned just how much I secretly missed having a number pad. Turns out it was a sh_t-ton!
I had been having a problem with something and was debugging it for days.
Today, colleague took a look at it with me.
“See, I am debugging this here and then I get a 400 Bad Request.”
“Weird, when I do that I get a 200.”
We looked at my account which had all the correct settings and all the necessary permissions.
Then he says: “Move the breakpoint down a few lines.”
It worked.
So what happened was that I started debugging before a sequence of requests but I was too slow and for security reasons the tokens only live for a couple of seconds. In being thorough I caused the code to fail.
I ran into something similar a little while back (with process spawning) and I ended up putting the following comment in the code: “Do not attempt to step over this line with the debugger, it will fail.”
Hopefully that prevents the next thorough person from wasting a whole bunch of time
I spend a lot of time sed/awk/grepping through text files (configuration files for network equipment, mostly). There’s a pattern that always creates more work than I have the patience to deal with, namely the quoted newline!
set comments "someone put a
new line in this comment!"
So I just wrote an awk script to detect things like this (in this case, the naïve approach of expecting even numbers of "
characters) and just join lines together until the count of quotes is even.)
I named my awk script escape_quoted_newlines
(in a PATH with appropriate hashbang). When I went to use it, I typed out “escap” and hit tab, expecting it to autocomplete, but it stopped at “escape”. I hit tab again, wondering what else would start with “escape”.
$ escape<tab>
escape-quoted-newline escape_quoted_newlines
I already wrote the same script (I don’t remember when) and have been struggling without using it for… who knows how long!
Wait, nevermind. The old one doesn’t actually work
escape_quoted_newlines
(awk script)
#!/usr/bin/gawk -f
{
split($0, a, "\"");
while (length(a) % 2 == 0 && length(a) > 0) {
if (getline nextline <= 0) {
print "no more lines: " $0;
exit
};
$0 = $0 "\\n" nextline;
split($0, a, "\"");
};
print "%s\n", $0;
}
I am feeling stupid today. And yesterday. And the day before. And last week.
Bashing my head against the wall with variations on my search terms only ever revealing scrolling heaps of documentation that I scan and scan and scan until my eyes are falling out of my head without ever finding enough pieces of code or configuration that match what I want to do to warrant trying.
I know in theory some of what I should be doing. Half of it has been done by someone else already. I have had glimpses and glances of parts of the goal–a classname here, a line of code there and maybe some few snippets of configuration.
If only I could write a few lines of code I would feel better. Coding is the easy part.
I hate Oauth.
PS: The gap between theory and practice is not as wide in theory as it is in practice. To understand recursion first you must understand recursion.
It’s going to make them try and figure out why it doesn’t work…
I once went looking for a solution to something on Stack Overflow, found the perfect answer which told me exactly what I needed to know, went to give it an up-vote and was told “you can’t vote for your own answer”. Turns out I’d run into the same problem some years earlier : )
Ahhh, the Friday afternoon… best time to NOT be working.
So I am debugging and “googling” (not that particular one but what else am I supposed to say? duckducking?)
Put in 2 tech terms and I get tons of results. Remove one additional term from the results (via minus) and there is 1 result for the search and I have already read and discarded it. Is the internet telling me we need to upgrade to the new wildfly security system after all? I had really hoped that was going to be a different project later on.
PS: the difference between software development and programming is that for the former you only occasionally do the latter. In the last week, I have written a grandiose 10 lines of code none of which are commit-worthy.
Ducking to avoid any extra low-flying work?
It’s not just you, oauth is horrid.
Actually the team manager asked this week if we would end up with less work if we switched to the newer system first. I said no on Wednesday. Wildfly configuration is even more horrid than oauth. Combine the two for best results…
I get paid by the hour. I usually don’t care much what I am doing. But I do prefer to feel productive and googling application server configuration options feels as unproductive as not working at all.
Feels like the best thread for this:
I hate Apple, and iPhones in particular.
That is all. Please, continue to go about your day.
With the whole cookie directive some websites are being extra assholes about it and never mind the law that gave us all this in the name of protecting our privacy and the law is not to fault except it left too many loopholes… you–as a website owner–do not have to tell your users “oh you want to opt out of cookies? well guess I’ll show you how much I like that by giving you a popup with a clock telling you it may just take a few minutes to opt out of some cookies. especially if your browser in any way tries to block me from tracking you in other ways.”
(it’s the docker website btw)
which is totally the reason I have an aggressive cookie deletion plugin installed. (Cookie Autodelete on Firefox)
PS: also oracle has the most asshole lawyers of them all–I recently had the opportunity to observe them in action from (somewhat) afar.
I just want to add f… vagrant and ansible. All I want is to be able to test my s…stuff before–you know–messing up my server. But no vagrant really wants to only provision with ansible on a linux machine . But while ansible might want to work inside the WSL, vagrant doesn’t really want to play nice inside the WSL and installing and re-installing different versions on windows leads to countless reboots b/c that stupid old tool still wants reboots. But this is the tool that the tutorial uses but that guy has a mac where magically it all just works.
Yes yes it’s been ages since I first posted about my new server… I am not IT or devOps, I am a software dev this stuff is hard for me… I can debug large legacy projects to death but I am not good at admining.
Why do I even want to run my own stuff? Because once I get it running, it’s beautiful and magic and it makes me feel like I have all the power when I ssh onto a server on the internet that is all mine and does WHAT I WANT. But before it does what I want it’s a hellish misery of config files.
I’ll go play Gloomhaven a bit, that’s less frustrating.
Never tried vagrant on Windows (haven’t had a Windows machine since before vagrant was a thing), but ouch.
A little bit of good news: I seem to have managed to tweak my videoconference server to allow local recordings, which will make recording remote podcasts with non-techie people a Whole Bunch easier.