Ask a Skytap Engineer: Nick Astete
This month we’re kicking off our ‘Ask a Skytap Engineer’ series. A quick peek into the mind of the people who make our product what it is. No marketing, no filter (well, maybe a tiny filter). We’d like to give the community a chance to ask questions about cloud computing, hybrid cloud networks, Skytap Cloud functionality—technical things, practical things. And yes, we will always include a trivia round at the end.
This week, I spoke with Nick Astete, Web Developer from Skytap. Nick actually joined the company when it was only weeks old in 2006. He holds a degree in computer science from the University of Washington.
Q: What would you say Skytap Cloud offers in terms of facilitating software development?
A: In our product it’s dead simple to create virtual environments that can host even very complex apps. As Ian Bone discussed in Eating Our Own Dogfood: The Skytap Development Environment, we actually develop Skytap inside Skytap. But I’ll talk about how someone can use our product in the context of software testing. It’s trivial to copy and share virtual datacenters in Skytap Cloud, and this allows for some interesting extensions to traditional testing strategies.
As every developer knows, it’s cheap to write new code but expensive to fix and maintain it. Bug-tracking systems are no panacea. We’ve all been assigned a bug announcing “this is broken pls fix it now SUPER URGENT!!!” But when the bug is investigated, no problem surfaces. The upshot: wasted time. Niggling doubts. And no fun.
Integrating Skytap Cloud into a bug tracker enhances the QA process. If you find a problem, for instance, a tester can click a button to suspend the full environment, then attach it to a bug report. And since Skytap is cloud-based, the environment is just a hyperlink, which can be opened in any browser. At a later time, a developer viewing the ticket can spin up a copy of the environment at the very point of failure. He or she can open a web inspector to inspect funky HTML or a corrupted cookie, or open a shell on a backend component behind a firewall.
Compare this to squinting at a screenshot or deciphering a mess of repro steps.
Q: As a developer, what interests you about SmartClient?
(Editor’s note: SmartClient is Skytap’s remote VM desktop technology. It works on any modern browser, for any VM, and requires no custom plugins.)
A: First off, I use SmartClient in-house to collaborate with other programmers. If I’m having trouble building some third-party project or troubleshooting netfilter rulesets, I can send a co-worker a link to the VM’s desktop. I don’t need to expose it to the public Internet or share SSH keys. I do have that option, of course. If I’m feeling paranoid, I can limit access to the SmartClient session with a password. This doesn’t involve mucking with the VM since access to the desktop is enforced by SmartClient itself.
Likewise, I’ll often whip up a quick prototype in a VM and send someone a SmartClient link. I can suspend the VM and allow them to start it when they’re ready. Enabling auto-suspend eliminates any worry that they’ll forget to stop the VM when they’re finished. If my code requires access to on-premise infrastructure, the self-service VPN feature makes it a breeze.
Since SmartClient is HTTPS-based without custom browser plugins, it works pretty much everywhere. When meeting with customers, I can confidently demo in-progress features without worrying about draconian outbound proxies.
Finally, the SmartClient backend makes it possible to connect to a VM using a stock RDP client. We have some interesting technology to enforce secure connectivity. VMs are accessible even if not running an RDP server. This includes Linux VMs. It’s nice to restart a VM, configure its BIOS or even reinstall the OS without severing the SmartClient connection. I can change its IP address or bring down a network interface and still view the desktop.
Q: OK, time for the trivia round: Nick, how much does the Internet weigh?
A: Ha! I remember seeing this on Hacker News. I believe the short answer is: about as much as a strawberry.
Since Internet data is represented by electrons in motion, you can take figures for worldwide datacenter power usage and estimate the number of electrons zipping around at any given time. Electrons have a miniscule amount of mass—add them all up and in some sense the Internet “weighs” a few dozen grams.
(Editor’s note: See this video for more detail.)
Who knows, maybe someday this will be useful. After all, you might assume the Earth’s max computational speed as the digital equivalent of angels on the head of a pin. Surprisingly, it turns out to be a good metric in comparing cryptographic algorithms. Google Bremermann’s limit if you have a few minutes to kill.
Have a question for Nick? Let us know. And if you have a question for our next engineer in the series, please leave it in the comments section below. Or feel free to pose it on Twitter to @Skytap as a future ‘Ask a Skytap Engineer’ question.