Following on from our third article, "Developers on ThinkPad Tablet 2: User Experience/Hardware", we once again speak directly with the developers.
In this fourth article, we focus on the software development directly affecting the user experience. We interviewed two engineers from the software department: one who worked on device drivers for the legendary 700C digitizer pen model and the 750T, in addition to APS (Active Protection System) development, and another who was temporarily posted to Microsoft, and has experience with BIOS development and development of the original Tablet.
- What are your thoughts now that software development for the Tablet 2 is over?
Yomo: Though I say it myself, the fact we completed it feels like a miracle (LOL)... With software development for a regular product, you can usually get things working and carry out tests smoothly about three months into development, but it took a long time to get off the ground with the Tablet 2. It really came down to the wire in the end.
Maruichi: Developing new BIOS, OS, and ThinkVantage software from scratch for a product was a new experience for us. In the past we've always had a base to work from for at least one of these, and when a problem arose during development we could rule out this stable base to identify the cause of the problem more easily. However, this time we had to build everything from the ground up, and we faced many problems we'd never encountered before...
We had to consider many new things from a functional perspective as well. For example, how do we handle touch controls for BIOS setup? How do we support security functions like Computrace on a system without the SMI (System Management Interrupt) priority-based interrupt function supported by PC chipsets? How do we obtain battery information without a full-fledged embedded controller? The BIOS team had the biggest hurdles to overcome.
- It sounds like it was an epic struggle... How did you resolve these issues?
Yomo: Our BIOS engineers took turns being stationed in Taiwan the whole time. I also spent about six months at Microsoft's headquarters in the US.
This was mentioned in an earlier interview, but for the Tablet 2 we signed up to Microsoft's IDP (Integrated Development Program) partnership program, which could almost be called joint development. Close communication was necessary for Microsoft to carry out a range of internal testing in tandem with Lenovo's development tests, so I was sent to Microsoft's research lab to serve as Lenovo's software development representative.
However, regardless of my field of expertise, from Microsoft's point of view I was merely manpower sent to advance the development progress. While on the job, I received input on any problem that came up. I served as a kind of hub, I guess. When a hardware issue came up, I took care of requests for photographs of the disassembled parts from the mechanical engineering or electrical engineering departments at Yamato Labs.
I think I've probably disassembled the Tablet 2 more than anyone else in the world (LOL). I must have done it over 500 times now.
- Disassembly? That sounds more like a hardware task. How did you wind up doing that?
Maruichi: I was Yomo's supervisor at the time, and I asked him to do anything he could to help out on-site. Looking at the big picture for Lenovo as a whole, our goal was to bring the product to completion, and not to simply handle the software development. We of course provided him with support from Yamato, but the disassembly of a device can only be done by the person on the ground... All we could do was ask, "Are you still hanging in there?", and tell him, "We're almost there, so put up with it a bit longer." (LOL).
Yomo: One of the reasons I disassembled the device was to resolve a certain issue. We had a problem with power not being supplied from the chassis-side connector, which led to the battery running out quickly. When power can't be supplied, you can't boot up the device, so there's no way to do software testing. Until that issue was resolved, I opened up the cover and connected USB power directly to the internal circuitry to carry out tests.
That may be a job for the hardware team under normal circumstances, but they were busy fixing other issues, so we went ahead and did it ourselves (LOL).
We faced a lot of challenges along the way, but once it was up and running properly, we could move on to the user experience improvement phase.
The basic touch screen controls, such as scroll or zoom tracking, have a significant impact on the user experience. We made the controls smooth by incrementally improving the quality of the software. More specifically, we optimized the software design in areas such as the firmware, graphics drivers, and physical/logical modules to improve the performance of the touch controls.
The smoothly flowing scrolling is one of things we are most proud of.
Maruichi: ADK (Assessment and Deployment Kit) for evaluating performance that Microsoft provided was also an invaluable tool for improving the quality of the OS and all the installed software. We straightened out a number of faults by applying the results of these evaluations, which improved the touch controls, as well as the screen update speed, and the speed of boot up, sleep and shutdown. I think this also contributes to a better user experience. In the beginning this tool didn't work at all, so it was a dramatic improvement (LOL).
- In these interviews I always ask about anecdotes or tales of the hardships faced during development, but I think we've had just about enough of that (LOL). If there's anything you'd like to add, though, be my guest.
Yomo: I have another three stories to share with you (grins).
The first is something that left an impression on me from the time I was stationed at Microsoft.
The Tablet 2 tests carried out at Microsoft were handled in a high-security test room in their User Experience Lab department. The temperature in the room is always kept at a constant 15 degrees Celsius, or thereabouts. For a Japanese like me this felt cold!
They had rows and rows of Tablet 2 devices set up in there, and rows and rows of people testing them. The various touch control operations were actually carried out by these testers, so it seems that even high-tech companies rely on manpower when it comes down to it.
I had the strange realization that people are the only ones who can evaluate the sensibilities of people.
The second story is about the red dot LED in ThinkPad's "i".
Initially, the device featured a red dot LED. Like the Edge series, we included a function that caused the LED to glow softly like a firefly while in sleep mode. The red accent is part of the ThinkPad identity, so this design was a good way to emphasize it. Implementing this involved work on the hardware side of course, but also on the software side. However, partway through development we learned that we were required to limit the use of LED indicators in Windows 8 tablets, so in the end it was not implemented.
But if this requirement were to be removed, we'd be ready to put the function back in straight away (LOL).
The third thing is just a minor detail involving the BIOS setup screen.
The Tablet 2 has a small screen, so it is difficult to set up the BIOS using touch controls due to the lack of space between lines. At first we thought that zooming in would solve this issue, but it wasn't possible to zoom in before the OS was loaded. The BIOS is basically similar on all devices, but in this case we paid particular attention to operability.
Ultimately, we increased the space between lines to allow easier finger control.
BIOS setup screen
Maruichi: I have a story as well (grins).
The purpose-built keyboard for the Tablet 2 is an external keyboard that connects via Bluetooth. People tend to assume that it simply uses a Bluetooth connection, but in reality it involves much more than this. We had to make a number of decisions, such as which device detection method to use, and how to implement power management functions. We did a lot of research on the Bluetooth keyboards of our competitors, and cherry-picked the best features. ThinkPad also has the unique TrackPoint function. This was the first time the TrackPoint function saw the light of day on a Bluetooth-connected keyboard. It was also not merely a TrackPoint, but an Optical TrackPoint, which was another first.
Implementing the middle button on the TrackPoint at the front of the keyboard was particularly difficult from a technical standpoint. The middle button is often used together with the TrackPoint to scroll the screen. However, it actually has to support a variety of functions for each application. The manufacturer that supplies the TrackPoint has already accumulated a great deal of technical knowledge in this area, but this was new to the manufacturer of the Optical TrackPoint that we adopted this time. Furthermore, the Optical TrackPoint supports a unique function for continuing to scroll with inertia, which was quite a challenge to implement. We also agonized over how to implement the hotkeys on the sixth row of the keyboard.
These challenges were something only Yamato Labs could tackle, so we carried out development independently. The software that we developed for this was ported for use in the Bluetooth keyboard featuring a TrackPoint that was announced just recently.
- In closing, can you share your thoughts on any plans for the future?
Yomo: We faced a lot of difficulties along the way, but I enjoyed the challenge of working on a new OS and platform.
The Tablet 2 is a first generation Windows 8 ThinkPad tablet. I can't say with full confidence that we reached the level of quality that we aim for as developers... Because it was a first generation product, there were some areas we didn't explore fully, and other things we wish we could have implemented but didn't. To be perfectly honest, I'm not satisfied that we've done all we can do yet. We've set goals to improve stability, so we'll make the second generation product even better.
Each time I finish working on a product I reflect on things I could have done better, and I constantly set my sights on higher goals, so I may never be 100% satisfied (LOL).
Takashi Yomo holding the Tablet 2
Maruichi: The Tablet 2 itself represented a myriad of new challenges, and on top of that we also made the keyboard... I feel honored to have been able to contribute to such a challenging project, but it was a grueling experience, and the first time in a while that I've pulled all-nighters for a project. I guess I kind of shrugged it off, thinking that at least it won't kill me, and at some point things should improve. I must have thick skin from working on the original Tablet (LOL). I'm only human, though, so it was a big load off my shoulders when the product was complete. I'm grateful to all the people who worked on the team.
I'm hoping to work on the development of a more specialized tablet device in the future. For example, something specially designed for the restaurant industry that can switch between menu languages, process credit cards, and handle hand-written signatures... Maybe we could even make it washable? Just kidding (LOL). I believe that tablet devices are the best PC+ products for custom solutions like this. I'd like to propose something that can broaden the horizons of Lenovo's tablet product lineup.
Tomoki Maruichi holding the Tablet 2