Look down, look down...
Talking about what it's like to be part of the workforce. A nine-to-five-er. A salaryman/woman. Or, if you're in school, that too. You'll be here soon.
Sort by: Latest Thread | Latest Post in Thread

Going to Guam for 9 days in May!

#5084, posted at 2013-04-26 12:21:24 in Look down, look down...

Break room. Pretty Red Corolla Lady walks in.

Josh: (cleaning coffee cup with 180F water dispenser)
[TV: News coverage on Boston, a crowd singing "America, America, God shed His grace on thee..."]
Corolla Lady: (standing by patiently)
Josh: "Ah, here you go..." (switches to normal sink)
[TV: "And crown thy good with brotherhood..."]
Corolla Lady: (begins filling water pitcher)
Josh: (finishing cleaning cup) "Sad stuff, eh?"
Corolla Lady: "Yeah."
[TV: "From sea to shining sea!"]
Josh: (fills up coffee cup) "..."
Corolla Lady: (finishes filling water pitcher, walks out of room)

I was the awkward break room transgressor this time around. The circle is complete.

(edited) #5069, posted at 2013-04-18 12:41:35 in Look down, look down...

I have to tell someone.

At work, we use Oracle relational databases. Oracle databases, if you aren't familiar, are geared for very large, very complex operations, suited for massive companies storing decades worth of information. Oracle is at once revered for its reliability and reviled for its complexity and capability for obfuscation. It hails from the late 80's to early 90's, when computers were just coming out of their monolithic, batch processing days, where COBOL scripts ruled the world, and data management was very, very hard. It serves its purpose, but it takes an incredible amount of resources, both human and computer, to keep them running.

Oracle's proponents and experts are... consistently interesting people. In my experience, they are either older folks, having been elbows deep in Oracle's guts for decades, now cynical and war-worn, or younger people who are seeking professional legitimacy by putting "Oracle" on their resume.

Oracle veterans have the opinion that if something can be done on the database, it should be done on the database, given the performance gains from calculating things on the database rather than having to wait for network transfer, parsing, etc. Often, this is a reasonable policy, as the database can more easily and succinctly perform common types of calculations better than you would if you were to reinvent such a wheel. Oracle newbies adopt this premise wholesale with the promise of Oracle's superior performance and limited scope to make up for their lack of knowledge of the computing world. I know, because I have been the Oracle newbie.

However, I have the benefit of having seen the other sides of the fence. Database technology, or rather, "data persistence layers," have come a long way since Oracle was new. Forward thinking companies big enough to warrant the use of Oracle (like Google) now rarely use products like Oracle not only for their exorbitant licensing feeds and cost of operation, but also because data storage is an entirely different game now. Disk storage is cheap, computation is cheap, and large, monolithic hardware is expensive to maintain. Reliability and scalability are critical, and small, repeatable, easy to create and then throw away data fabrics are all the rage because the Internet demands it. It's no longer reasonable to have a single database server. There are just too many people. Too many smart phones.

The IT industry has been moving away from Oracle for a while now. However, much like the bank industry's dependence on COBOL programming, Oracle is still widely, pervasively used in older businesses, governments, and utilities, or really any place with money to burn, no necessity to expose themselves to the Internet at large, and a reluctance towards change. Which is where my current employers come in.

Oracle is culturally entrenched where I work. In a very early-90's setup, we have groups dedicated separately to project management, PC desktop support, network and server administration, applications programming (my group), and database administrators. For a 300+ person company, we're a relatively large IT shop, but we also support a fairly wide range of things. We're the IT department you wish you had when you call somebody at your corporate IT hotline and you get somebody a few thousand miles away. As such, people in our company are used to getting what they want from IT (much to my dismay), and frequently, the expensive, ridiculous, utility-geared software requires an Oracle database backend in order to lend some credibility to their otherwise janky and outdated programming sensibilities.

Additionally, when I say Oracle is "culturally entrenched," I mean figurative-nigh-literal trenches. Applications programmers and database administrators, while cut from the same cloth, continually compete for intellectual ownership of projects and intellectual superiority over one another. It comes part from our egos, but also due to Oracle's presence. It is a continual pain to configure, manage, and troubleshoot from a programming perspective, but it's too useful and reliable to give up. Many alternatives exists, but when you've already paid for the licenses, it's hard to let them go unused. Plus, Oracle's architecture and toolset promote a "everything goes into Oracle... and stays forever" mentality, given that the more effort that goes into writing things that interact with Oracle, the more effort one signs up for in the future to get more things to interact with Oracle. It's a vicious cycle.

That said, once things reach a working state, it tends to be that you can leave them alone for a long time.

Which is where the problem starts.

One of our engineers has been with the utility for a long, long time, a very smart guy with a dangerous level of knowledge when it comes to programming and databases. He has ownership of a number of pieces of software, some critical to managing equipment failures and doing analysis of those failures over time.

The product we started with was merely a "collector" application. It collected data, and provided rudimentary reporting and analysis tools to see how pieces of equipment were performing (or ultimately failing). We'll call this system Alpha.

A second product came along, which was another "collector," whose job was to aggregate data from multiple sources, including those from Alpha. It offered a number of nice analysis features that Alpha didn't, as well as provided the ability to "join" disparate data sources together. We'll call this system Beta.

System Alpha and system Beta needed to talk to each other. Beta knew how to talk to and get information out of Alpha, but Alpha didn't know anything about Beta. Alpha was already home to a number of interesting reporting features, but couldn't talk to Beta to make use of its additional capabilities.

This is when our engineer started making development requests to the IT department.

The requests were for additional reporting features that took information from both Alpha and Beta, and made it available in Alpha. However, inevitably, these features would then need to be made available back in Beta in order to do the same kind of analysis for the folks who only had access to Beta.

This process repeated for at least a decade.

As the requests, and implementation of them became increasingly complicated, the less people understood the full breadth of the system that was being put into place. Additionally, the requests would be handled differently between the applications programmers and the database administrators, and implemented by a different person each time. At least two generations of database administrators cycled through, and all but one of the application programmers remain (who had only worked on cursory modifications, and wasn't part of the original development).

Then I came along. And they dropped a binder on my desk. And told me to "start upgrading."

The best way to demonstrate this accreted clusterfuck is through an example of a pattern I've been discovering with some of the reports:

  1. A user of Alpha makes a request for "Equipment Failures" for all equipment. This process is run once a quarter to budget for the amount of preventative maintenance is needed.
  2. The request is made against a "view" (a stored query in Oracle) stored in Alpha.
  3. The view joins together a number of the tables in system Alpha, but also makes a "link" to Beta, using a view that resides in the Beta system.
  4. The view in the Beta system grabs data from a few tables local to Beta, as well as makes a link back to Alpha, using a number of tables and views that reside in Alpha.
  5. (It gets better) The tables that are local to Beta in the original query coming from Alpha are loaded on a nightly basis according to a subset of the data that exists in Alpha.
  6. The procedure that loads the data into Beta from Alpha dynamically rebuilds all batch-loaded tables according to a series of 20+ procedures, all of which then rebuild the views that are called by Alpha based on arbitrary criteria.

It is fucking nuts. Things to take away:

  • There are circular references between databases
  • Some of the circular references circle around to access the same data you started with.
  • The data is loaded nightly, and through a procedure that is obfuscated as to its original intent or design specifications (nobody can tell me what they know, or admit that they know the evil that lurks here).

The example above is just one case among potentially dozens. This spaghetti mess is something that, rather than revisiting or redoing, they would just tweak to solve their immediate problem, and then walk away for as long as possible. Or as long as it took for them to find another job, or retire.

What bothers me is that among numerous IT professionals, knowing full well the ramifications of their inaction, have chosen to pass the buck for as long as possible without acknowledging the depth of the problem. It is only now that I'm being forced to upgrade one of the dependent systems has the inevitable come to pass. My choices are now limited to breaking business-critical functionality as a result of the upgrade and hindering our engineering departments, or somehow continuing the cycle of abuse.

I have to tell someone. Because it's a goddamn mess. And so that perhaps, if ever you have the ability to make such a decision, stray away from Oracle: the thing that allows great power, but also unspeakable evil.

(edited) #5011, posted at 2013-03-15 01:57:01 in Look down, look down...

Trying not to project my own shortcomings as other people being unreasonable, unthinking, stuck up assholes.

But seriously. FUCK UW admissions.

#4887, posted at 2013-01-11 12:58:03 in Look down, look down...

For some reason this week I've been super antsy about the PE exam results. I WANT TO KNOW NAO! GIVE ME THE TEST RESULTS!!!

#4788, posted at 2012-11-30 16:16:10 in Look down, look down...

Leaving for lunch today, see a lady struggling to get an armload awkwardly through the door:

Josh: "Need help with the door?"
Lady: "No, I've got to load more up, but thanks." (sets items down, walks back)
Josh: "Sure."

Nothing weird about this one. If I document the weird ones, I should document the reasonable exchanges as well. Or rather: the fact that I didn't say that all of the items wouldn't fit in her Corolla (which I happened to see her driving on the way in to work),

#4682, posted at 2012-10-05 17:49:10 in Look down, look down...

Good news. Bad news.

Good news: It's official. My "temporary-no more than three months-we promise" assignment of managing two branches will finally end after 4+ months (not too far behind, for government work) on October 22nd. I'll be back to managing just my branch.

Bad news: If the mayor passes his "Plan A" budget (which is not the most likely thing) I'll be leading a "crew" that floats between three branches while another crew works opposite us.

I'm really good at my job. I'm fairly good at these other things, but I promise I'm awesome if I was allowed to do just my job for a while.

#4680, posted at 2012-10-04 19:12:00 in Look down, look down...

Client makes giant fuss about having an equipment installation detail on drawings be what they call their "proprietary installation detail." When asked for the detail to incorporate into our set, client then sends a photo of an existing installation, and a manufacturer's recommended installation manual.

*throws table*

#4674, posted at 2012-10-02 14:30:05 in Look down, look down...

In the break room:

Lady: "Are you new?"
Josh: "Yeah, couple months now."
Lady: "Where do you work?"
Josh: "I work in I.S."
Lady: "Ah, so what do you do?"
Josh: "I sort of work with ___, keeping the data flowing, sorta."
Lady: "Ah, all that interesting stuff." (walks away)

Though I can't really convey it here, she said "all that interesting stuff" in a way that meant the absolute opposite.

I can't decide if people just fear/dislike/misunderstand my association with my department in particular, or my association with technology in general.

Maybe it's just people doing the usual self-deprecating, "I don't know anything about technology" shtick (as they whip their iPhone out of their pockets). Maybe I just identify too closely with technology to recognize a joke, or an attempt at one.

#4650, posted at 2012-09-28 13:20:59 in Look down, look down...

Now that I'm less than 2 weeks from quitting work and moving away from Alaska, I've realized that this is the longest-held job of my life: roughly 3 years and 9 months. Of course, no bank will recognize it as a 'permanent' position, as it's a federal SCEP (student career employment position)... and there is the question of of how many months I TECHNICALLY worked, since they allowed me to work part-time when school was in session... but overall, it's the longest job I've every held. Between NPS, USFS, and USACE, I think I've now worked a total of 5 years for the feds.

I think, if the whole academia thing doesn't pan out, I may return to the feds. Private contractors may make a hell of a lot more money, but the benefits aren't as good and the work isn't as steady. And, although the bureaucracy often makes me want to run screaming out the window, I'm beginning to realize that there are very few employment opportunities where you can avoid it.

Hopefully by the time I'm done with school (in another 5 years) the federal hiring freeze will be over.

#4522, posted at 2012-08-18 18:55:55 in Look down, look down...

My corporate credit card made a trip to Perth, Australia last month. Without me. WHY COULDN'T YOU TAKE ME ALONG?! I'd love to visit Australia!

#4507, posted at 2012-08-13 12:42:45 in Look down, look down...

That was a beautiful day to play hooky and go dipnetting

#4455, posted at 2012-07-19 03:38:34 in Look down, look down...

In TCP (Transmission Control Protocol, which controls about 50% of all Internet traffic) has an interesting mechanism embedded within it.

The protocol itself is designed to guarantee intact delivery of data over unreliable mediums (bad devices, bad wiring, etc.). It can detect dropped packets and malformed packets, and takes it upon itself to retransmit in the case that these are detected. It is also designed to automatically deal with network congestion, should the situation arise, but it does so without talking to any of the devices in between.

It does this by slowly increasing the "window" of packets it has that are en route. This means that, at the beginning, it will transmit 10 packets, and then wait for acknowledgement from the other end before sending anything further. As that window size increases, the amount of packets en route increases, and the overall throughput of the connection increases because the sending host is no longer waiting in between transmissions.

However, at some point, the connection runs out: either you exceed the capacity of your wire, or a device in between you and your destination decides to limit you (this is how your Internet connection is limited to a certain speed, your modem will start dropping packets if you exceed a certain rate). TCP assumes that this is caused by "congestion," and shrinks the transmit window to contain less packets (and also slowing down your bandwidth). It then starts to slowly increase the number of packets back up again, until it is inevitably rate-limited and it drops back down.

It looks a little like this:

The reason I bring this up is that today was the first day of work at my new job. And TCP congestion control was what I was thinking about because that would be exactly how I hold conversations with other geeks: talk about increasingly geeky shit until somebody's eyes gloss over. Then back off a bit, and then slowly ramp back up.

Sort of a nerd handshake. Or nerd chicken. But in the end, information is communicated, and you establish a clear level on which to communicate with people.

#4445, posted at 2012-07-16 23:35:44 in Look down, look down...

"Would you just send her an email to tell her that I'm sending her an email?"

-my employer

#4384, posted at 2012-06-07 18:56:09 in Look down, look down...

Today is my 4 year anniversary at my job. I have never done anything for this long continuously in my life, not counting social things.

I'm not sure if this is something I should be proud of or saddened by, since I both like my job and where I work, but I would also like to go find something and someplace new.

#4330, posted at 2012-05-01 13:12:51 in Look down, look down...

At work, walking by randomly...

Coworker 1: (yelled across cubicle farm) "Hey Coworker 2, there's a hitch in your get-up!"
Coworker 2: "Hey Coworker 1, there's a thing called Q!"

(Q being our internal instant messaging client.)

#4315, posted at 2012-04-18 13:10:38 in Look down, look down...

Friday the 13th. Here. We. Go.

#4308, posted at 2012-04-13 01:18:53 in Look down, look down...

Our network, lets use that term loosely since I have no concept of what an actual network is, got upgraded recently. So randomly a bunch of websites that were at one time blocked, now are not. Yesterday while taking care of some random soft science bullshit, filling things, labeling things, I was able to sit and watch south park episodes while doing so. I have never felt so good about misusing company internet.

Though to be fair I think I was more productive that normal since I didn't get distracted ever 5 or 10 minutes or so and check things on the web thus stopping what I was supposed to be doing. Also it made the afternoon go by pretty fast.

Anyone have a similar experience to this at work?

(edited) #4241, posted at 2012-03-16 17:44:59 in Look down, look down...

This...this explains so much. About college. And about now.

#4017, posted at 2012-01-23 22:34:55 in Look down, look down...

I need to know something regarding your workplace, specifically, how you work with Excel (or other spreadsheet applications).

  1. Generally, what do you use Excel for? Keeping track of something (inventory, contact information, etc)? Performing a calculation? Graphs?
  2. How often do you use it a day? And is it just repeated use (maybe same problem, different data set)? Or solving different problems entirely?
  3. How many Excel spreadsheets do you share with coworkers or groups? How do you share it (just passing around files, or a network drive, a versioning system, Sharepoint, etc.)?
  4. If you're working with a set of data, is that data ultimately stored in Excel? Or do you import it or copy it in from somewhere else?
  5. Have you used a spreadsheet that had "macros" or scripts running on it? If so, what did the script do within the spreadsheet?
  6. If a particular spreadsheet were to completely disappear, how critical would that be to business function?
  7. If you had to choose, what would you say is Excel's best feature? And the one you couldn't live without? And what would be its worst?

Thanks for your time.

#3942, posted at 2012-01-13 02:37:41 in Look down, look down...

Having to teleconference while on vacation = BULLSHIT.

#3673, posted at 2011-10-13 17:00:16 in Look down, look down...

It really pisses me off when I go to a manufacturer's website, type a model number into their search function, and get no results, then spend 30 minutes navigating through all of their bullshit menus and find a .PDF of the exact same model number I tried to search for. Useless.

#3672, posted at 2011-10-13 15:00:52 in Look down, look down...

There are a disturbing number of moths collected on every door in this building. All just... waiting for something.

Also, somebody let in a fly.

#3585, posted at 2011-09-19 16:35:33 in Look down, look down...

At the coffee pot:

Coworker: "Hey, so, do you shop at Costco?"
Josh: "Oh heck yeah, the only place I shop most times."
Coworker: "Well, their apricots are particularly good this time. The wife brought some home, and they are choice."
Josh: "Cool, I'll have to check them out. I've been particularly enjoying their grapes."
Coworker: (continues to pour coffee in silence, and then leaves)

I feel like I insulted them somehow. Or that maybe they were like the mindless NPCs in video games, with only one or two pre-programmed responses, after which they discontinue their conversation or start repeating what they said.

Whatever. Sanity is a small price to pay for coffee.

#3534, posted at 2011-09-08 12:33:11 in Look down, look down...

More bathroom stuff:

I don't understand when other dudes at work decide to flush the urinal before they're done peeing. Other than increasing the probability of urine remaining in the urinal, I don't see any practical reason for this.

#3524, posted at 2011-09-07 19:31:39 in Look down, look down...
Look down, look down...