Desktops, Laptops and Virtual Desktop Infrastructure VDI for work 我在美国上班20多年用过的那些电脑

stlplace
Reading Time: 11 minutes

中文版 – 谷歌翻译 – 美国上班20多年用过的那些电脑

I started working in the US since Oct 2000. In a few years, hopefully I can retire from my current software dev job on my own terms (rather than let’s just say being replaced by AI :-). When I 1st started to working in the US, back in year 2000, I had an HP-UX workstation. Something like below.

HP-UX workstation, similar to what I used at the time, source (Reddit)

You probably wonder how was it in terms of the user experience. I would say not that great. Please note around at time late 1990s and early 2000s, Unix workstations were actually quite popular in many places, including the graduate school I went, formerly University of Missouri at Rolla (now Missouri S&T). The Windows NT just came to the scene in the school and work place at the time. It was new and cool, but not at the spot that it dominates.

Note the company gave developers older (slower) or newer (faster) workstations to developers usually by seniority. Because I was new I received an old and slower workstation. And once I decided remote logging into the more powerful build machine, which was the workstation was assigned for compile and build work for another team, btw, I wasn’t aware of the assignment part, and do some work there. A few days later, the build person on the other team knocked on my cubicle and complained about it. That was actually minor compared to another incident. At the time if we want to use Windows, we log into a shared Windows NT workstation via a client on the HP (or something like that), once my “significant other then” decided it was a good idea to check her Hotmail via the mechanism I mentioned above and she ran a virus exe file right there, that broke the shared Windows NT environment for our department. It’s called WinCenter, here is the doc I happened to bump into. It works on UNIX work stations. Note the page 2 of the doc: “WinCenter WS+ provides the following capabilities for HP, IBM, Silicon Graphics, and Sun workstations” – at the time we have all 4 UNIX flavors for our software – which creates some challenges, because sometimes the bug only show up in a particular platform/OS. Most dev used HP-UX and are familiar with it, and HP-UX does have a reputation for overly lenient on memory management.

The following Monday the operation manager for my department knocked on my cubicle – he was as cordial as he could, but I got the lesson.

Windows

The Windows was already invading the market shares of the good old Unix workstations in year 2000, when I started working for the CAD software company. One of my project leads (tech lead) got his windows desktop 1st. He was the only one has the Windows machine. In a few years (I would say 2 to 3 years), we all switched from mostly HP-UX gcc debugger (and a few Sun Solaris holdouts) to the new and cool Windows desktops with Visual Studio IDE. I even saw the CEO of Microsoft Steve Baller once, when he was in STL to promote Visual Studio. Below I found this Steve Ballmer’s Microsoft Windows 1.0 commercial to be fun. He was just like that.

Steve Ballmer introduces Windows 1.0 back in 1986

I recall at one time we supported the Linux distributions as well as the Mac. Because the code was written in C for our CAD software, the main task here is compile and porting to the other platforms including automated integration tests. I did a bit of those tasks (compile, build and run the auto tests) on those platforms. Again the main development was done on Windows via Visual Studio at the time because that’s the most popular platform and it has the best dev tools too.

My 1st work laptop (sort of) and my Shanghai trips

Fast forward a few more years. I need to work remotely from China (our company just established an office in Shanghai). But this is also my personal trip as I need to see my families in China: working from Shanghai office will give me some time to explore, and also that was also the time I met my current wife.

Dell Latitude D420, illustration purpose

I recall in Sept 2006, my boss found me a used (a few years old) Dell Latitude business laptop which was retired device from a manager (and a former dev): and I used it doing coding work in SH office. I recall at the time the memory for the 32 bit Windows machine was 4GB, and I need to use up to 2GB for the program I am developing, and I was very careful about memory usage both inside my code and outside my code (mainly shutdown unnecessary programs). And you may already know, hardware itself isn’t the No. 1 determining factor of productivity – on that laptop, in Sept 2006, I fixed a bug in our software that’s also highlight of my dev career so far. With that fix, our German sales team could go to BMW and demo our software (otherwise we just could not go). That laptop also accompanied me in 2007 when I was in Shanghai for about 6 months (2 trips) when I was spending time with my girlfriend (my current wife). I wrote some blog posts when I was working in Shanghai in year 2007. I listed a few below.

Shanghai Market Is Still Hot

United Adventures

English Training Companies In Shanghai

One Bedroom Apartments In Shanghai

Back To Shanghai (Again)

Apply US Visa In Shanghai

When working from SH, sometimes I also used the Windows Remote Desktop logging into the desktop in my STL office/cubicle. It worked out fine too. I returned the laptop when I left the employer in Nov 2008.

Note around that time, probably from the year 2003 to 2008, Windows also became the dominant OS (platform) for our CAD software , and most UNIX workstations are going away, and at the same time, we support Mac, and two main Linux platforms (RedHat and SuSE Linux). Apple used our software for the designing of iPod (and likely iPhone and Mac, MacBook too). Of course they insist the design software runs on Mac 🙂

ThinkPad

Also in Nov, 2008, I started my new software consulting job at Autodesk, and I received a large screen IBM (or Lenovo? I don’t recall when exactly) ThinkPad for my job. I think it’s probably ThinkPad 500: Wiki and review). This one works fairly well, I used it for all kinds of work, including the AutoDesk Intent (Inventor) customize project, burning software CDs for customers. The reason I need to burn our software CD (mainly AutoDesk inventor, different languages), is because one particular customer asked for them and she is fairly demanding. I recall she threatened that our onsite consulting project may be in jeopardy if we don’t give her the CDs. It’s also interesting, my then more experience colleague commented privately: the customer thinks they own the software, they don’t – they are actually leasing it.

ThankPad 500, Illustration Purpose

Desktop days and my 1st touch of VDI

I worked on two contractor jobs after my Autodesk gig (which was a full time position). For the 1st contractor job (it was basically a contractor job for a large railroad company, and I used a Windows virtual machine – I cannot recall the exact vendor. But my project is fairly small, and it doesn’t need a lot of horse power.

My next contractor position was for a large moving company, and they gave me a desktop. That one is not quite powerful, and I used Eclipse (Java IDE), ant and some other IBM tools or software (DB2 and their J2EE stuff came to mind). I didn’t have laptop for work then. This has both plus and minus. Here is the plus, because we cannot move desktop, when we go home, we can no longer work – which is a good thing if we want a clear separation between work and home life. At the same time, the minus, because coding job is a brain work, not physical, if we have some ideas about the work, we can write it down, but we cannot try it out on the computer right away. Sometimes when the creative juirce is flowing in the brain, it’s better to let it flow 🙂

Other minus: on days when my car is broken down, I need to rent a car to go to the office and work (there is logistics work to rent/return the car, and so on). If I had the laptop, potentially I could work form home when I didn’t have a car. This is also the last time I had desktop for work. From then on, I exclusively had laptops (or VDI) for work, and basically I can work from home if needed (before laptop, it’s possible to work from home using Windows remote desktop from the home PC, but it’s not very efficient). Also before pandemic, in the most companies I worked, work from home is usually not the norm, it could be used as a last resort (e.g., snow days: I recall I did that once when I was a contractor for the railroad).

My two laptops days

In Jan 2012 I started doing iOS for my day job – I mainly Mac for iOS dev, and Windows for .Net web service dev. I also bought a MacBook Pro in year 2013 for my iOS contractor short term gig. Later in Nov 2013, I was back to java dev for Mercy, 1st on Windows, later on Mac. I had two laptops to return when I left Mercy for MasterCard in May/June 2015.

I bought the below MacBook Pro (the 1st retina series) in spring 2013, when I started as a contractor for EHI (now it’s Enterprise Mobility). I was an iOS contractor focusing on internal iPad app development: they gave me a Mac Mini in the office. I decided to get my own device so that I can have more flexibility. I used that device for almost 10 years including the briefly used it for my daughter’s virtual learning between March 2020 and May 2020. I sold it via eBay in year 2023 (I bought a MacBook Pro 16 inch Intel on Oct 31, 2020 – this is the main personal laptop I was using for last few years, including sometimes using for it work (more on that latter).

The 1st MacBook Pro I bought in year 2013, I sold this last year on eBay, having used it for almost 10 years

Mastercard was similar to Mercy: I had Windows laptop 1st for production support job; later I received a MacBook Pro for dev (they have a choice for devs to pick either Mac or Windows). It took me quite some time to setup the Java development environment on the MacBook in year 2018. A few months to be exact, but I was happy I finally made it work after spending “much of my spare time”.

In Jan 2019, I returned both laptops to MC due to layoff. Actually I returned my iPhone and MacBook on the spot – I returned the Windows Laptop via Fedex a few days later: because I left it at home that morning, when I drove to office for work (I was not expecting to be laid off that day). I only realized the possibility of layoff about 15 minutes before the meeting with my manager and HR person. My manager updated the meeting room a day before – I realized the meeting room which is near HR – was intentional: again I only realized it about 15 minutes before the layoff meeting.

Pandemic and work from home

In March 2019 I started working for Ascension Health. Again I had Windows laptop 1st, and later I received a MacBook Pro (in year 2020, later half). Due to my job nature at Ascension, I didn’t get to do much coding and in year 2021 I decided to switch jobs and get back to coding – which is what I am doing now, for the most part, to say the least. And guess what, for my current job, for the development work I got back to the VDI again. And to be honest, I was not too thrilled when I switched from the MacBook Pro to the VDI.

My initial Work from Home (WFH) setup during 2020 pandemic: I had a 13 inch MacBook Pro for work

Actually at Ascension I did some implementation using Horizon (VMWare) VDI for the new contractors too (guess the company ran out of money after handing out all the MacBook Pros 🙂 I recall the contractor VDI user, complained the Zoom or Google meet didn’t work well on VDI. I researched it’s a known issue and hard to work around or resolve.

A long twitter thread on #WFH setup including #VDI

Why companies chose VDI instead of laptops

Work from home (WFH) as a trend started from pandemic, and now WFH becomes mostly normal for IT and software professionals, at least a few days in a work week. With WFH, the laptop is naturally the 1st choice, but some companies decided to go with VDI. I think VDI has a few benefits:

1) Potentially lower overall cost and flexibility. The VDI is usually subscription or usage based. The employer usually needs to supply a thin client, or a lower cost laptop/desktop, plus external monitor(s). This is usually cheaper than a high-end laptop plus external monitor(s). Overall, the employer manages fewer hardware. The VDI instances are usually running in a datacenter and potentially can be managed by a partner (if not the company itself). I found this usage pattern or scenario works in the academics as well, as recently I asked University of Arkansas Walton Business School, for access to Teradata, and they provided the access via Horizon (VMWare) VDI access (which is similar to what I had or helped while at Ascension).

2) Centrally managed, and potentially better in terms of security and device management, this is evident in the deployment of many thin clients that mainly run Epic Software (EHR, electronic health record, or EMR, electronic medical record) in the hospital I have been to (Mercy, Shriners’ Hospital, BJC and so on).

There are downside of VDI too, as I mentioned some above. I recall in year 2021, when I 1st started to using VDI, at Panera Bread co., I lost connections quite easily partially due to the slow/not very stable WiFi connection at the Bread Co.

Moving from one machine to another

Do we want to move the trash over also? Or we move selectively? The right approach seems to be the latter 🙂 An old joke I recall from a friend: she said, they moved couple times, the boxes in the basement never got opened 🙂 In other words, those stuff are not used in her daily life.

Honestly I think it’s a great opportunity to clean up the house during moving. But at the same time, if someone is trying to keep things for a bit, in case he/she will need it down the road, I understand that too. In fact, I tried to save more than what I would eventually use – which is probably the case for most people. We overestimate what we would use in the future. That’s also one reason I got so much clutter at home. I need to get better at throwing away stuff.

My personal rules on company devices

This includes all the computing devices, from workstation, desktop, laptop, to VM and company phones. I think I did largely okay on this: in terms of personal info hygiene on those devices. Mainly I don’t store my personal information or kids pictures there. The only exception is iPhone (Mastercard), and I did use iCloud to backup my photos there. One horror story I heard from a former colleague at Ascension is the IT people wiped a retiring colleague’s BYOD (bring your own device) phone: all his grand kids pictures are gone. Btw, Ascension IT people nuked my work account in the morning of my last working day there – basically I had to ask my colleague send meeting invitation to my personal gmail if they need me, we were on the G-suite the Google suite for work 🙁

Anyone don’t put your super important, super personal stuff on the company devices.

PS: VDI choices from Citrix and Microsoft. I haven’t used them from personal capacity 🙂

Citrix: Windows, Mac

Cloud PC (Microsoft)

PS 2: probably in year 2006, I was thinking: “I am a slave of Bill Gates or Steve Jobs”. Hopefully I can get an upgrade soon. Maybe a slave of Warren Buffett instead (I am a big fan of him, btw)?

%d bloggers like this: