It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Minor gripe over how video streaming is handled over http by most popular video clients.

It goes something like this...

There is a big ass 4 GB video on the server side that is to be streamed.

The client doesn't know that.

How the client should handle problem:

1) Do a head request

2) Look at the content's length

3) If the length is small, request the entire movie

4) If the length is large, do a range request on the first x bytes.

How clients tend to actually handle the problem:

Request the entire 4 GB movie in one shot.

*Facepalm*

Yeah, once you seek to a particular spot in the video, clients tend to do range requests appropriately, but that initial request is a killer.
avatar
Magnitus: snip
This is especially tedious when people upload short clips on repeat. In most cases, rather than just setting the video to restart when finished, they just loop the video for like 10 hours and eat everyone's bandwidth forever.
Why on earth would anyone insist on using item captions as opposed to their names in source code? I'm translating GUI to english and half of the application is broken because of that.
avatar
Fenixp: Why on earth would anyone insist on using item captions as opposed to their names in source code? I'm translating GUI to english and half of the application is broken because of that.
Why on earth wouldn't they use actual IDs corresponding to the element? Seems much better than captions and names, but maybe I didn't understand what you mean by captions/names.

For example, in the actual source code:

<option
category="random.category.thingy"
id="random.id.thingy"
name="%toolchain.base.sharedoption.precsupport"
valueType="enumerated">

<enumeratedOptionValue
id="random.id.thingy"
isDefault="true"
name="%toolchain.base.sharedoption.precsupport.noprec">
</enumeratedOptionValue>

</option>

and then in our "naming/translation file"

toolchain.base.sharedoption.precsupport = Precision Support
toolchain.base.sharedoption.precsupport.noprec = No precision support
Post edited January 18, 2013 by AndrewC
avatar
AndrewC: ...
Name = ID, I'm just using Visual Studio's terminology. Well not really, but that doesn't matter at all, you can actually assign a unique identifier to every graphical element (well... You have to, it's not really optional.) Buut half of the application is using captions instead.
Promised I would do something for a "coworker" (we were supposed to work together but we're actually from different companies). Then my boss changed his mind and told me not to do anything until some random billing issue was agreed upon with my coworker's boss. Now I'm stuck with not being able to do what I promised, yet not being able to give a reason for it, and I feel like shit. Not the best way to build trust, and when working remotely that is something extremely valuable.
One of my colleagues is such a fucking back-stabbing moron! A few days ago he forwards me an email about a customer issue that needs investigating and asks me if I have time to do it; I tell him that I lack both the time (100% invested in another area of development currently) nor is that component on my current task list.

Today I wake up with the following email in my inbox, a reply to the original email thread describing the customer issue (so everyone in the original thread is also receiving this email):

"Hi Blahblah,
AndrewC (cc) will look into this.

Thanks,
Moron
"

and I'm added to the cc list.

WHAT THE FLYING FUCK!?!
avatar
AndrewC: ...and I'm added to the cc list.

WHAT THE FLYING FUCK!?!
Tell him that you won't do it, that you told him so and that he is responsible for sorting it out with the customer. Also notify the boss about it.
Sometimes, end users are so stupid, it's a miracle they can even switch on their computers.

I recently spent 20+ hours investigating a case wherein the customer described that some of their remote users kept getting kicked off our system. The customer hosts the servers our system runs on, so everything happens on their own network. The case included an excel sheet in which three users had registered all the times they'd been kicked off the system.

So I spend an awful lot of time browsing through logs, following up on errors which coincide with the reported timestamps, checking the functionality of tons of code, etc. In the end I conclude that the data I was supplied must be inaccurate, because as far as I can tell, two of the users in question were logged into the system for less than an hour on the day they claimed to have been thrown off more than 15 times over an 8-hour period.

So I ask the customer for new data, and I receive a new list of times from one of the end users, this time from today's date (at the time when I got them). I check up on his activity on the system and concludes that these data are also wrong. The user claims to have been kicked off the system 19 times that day, but I can tell from the log that he's only logged in twice. The first time when he originally logged onto the system that day, and a second time after a period of almost 2 hours without activity (the session times out after an hour), so everything in the system seems fine.

So... I write back to the customer yet again, and asks if they are sure it is actually our system their users are getting kicked off of, or if it could possibly be one of their other third party systems.

That was two weeks ago. Today, I get a reply from the customer. It turns out it wasn't our system their remote users were being kicked off of. It was their Citrix client, which they need to be logged into in order to access the system from outside the local network.

Granted, the customer ends up paying for every damn hour I spent on that wild goose chase, but it's still annoying as fuck to spend so much time on something completely irrelevant.
avatar
Wishbone: snip
Debugging and analyzing skills + 1 :)
avatar
Szulak: Debugging and analyzing skills + 1 :)
Well, yeah. No time spent analyzing a problem is truly wasted, I guess. Next time I run into something similar, it won't take me nearly as long to find out if there is something to it or not. But it is still annoying to be put to long hours of work based on completely false assumptions.
Ah, the wonders of having new people added to my team.

Spent the past couple of days trying to convince one of the new Python devs in my team to respect PEP8 without much success. The downside is that I can't just plug into our version control system and do the formatting on commit.

Fortunately I managed to get the other new hire to use Sublime Text 2 and I sent him my config files as well as PEP8 plugin which screams and shouts and auto-fixes things on save if he doesn't respect the guidelines and he's liking it so far and starting to code according to style.

I know this sounds a bit drastic, but it's hell to do diffs when the formatting is all wrong/different and it gets annoying after a while. That and good coding style makes things better in general.

Now if only I could enforce some formatting style on our countless XML files. One can dream...