Microsoft Cloud Authors: Yeshim Deniz, Janakiram MSV, Andreas Grabner, Stackify Blog, Liz McMillan

Related Topics: Microsoft Cloud

Microsoft Cloud: Article

Exclusive .NETDJ Interview with Brad Abrams: Talking Frameworks, Namespaces, and Programming

"We Do Believe That Introduction of the .NET Framework Was an Inflection Point That Only Comes Once in a Blue Moon"

.NET Developer's Journal editor-in-chief Derek Ferguson (.NETDJ) and Don Box (DON), a leading authority on COM and architect in the Microsoft .NET Developer and Platform Evangelism Group, recently sat down to talk with Brad Abrams (BRAD), Lead Program Manager for the .NET Framework, about that framework.

.NETDJ: What namespace are you the proudest of in the .NET Framework?

BRAD: That's tough because there's this tendency when you work at Microsoft to find faults in whatever you're working on. Since I work on the namespaces, I have no problem finding faults!

I really like the System root namespace, though. There is a lot of common functionality that we have been able to canonize, but there is a lot of good additional stuff there, as well.

DON: Of which namespace are you most ashamed?

BRAD: I am actually very proud of where we ended up with the .NET Framework as a whole. But of course there are always areas that could be be better. For example, there is System.Runtime with InteropServices and Remoting. That namespace was designed by people who really understood COM and Win32 and when you go in there it kind of feels like that. We let some of the design guidelines be more liberally interpreted for that namespace.

DON: The namespace that gives me must joy is Interop, actually... because of what it enables, as well as the way it is delivered. If you know you have unmanaged code, it is pretty darn expressive. There are very few things I've wanted to do that I couldn't do with C#. I just think if I have to do something, contrast this with JNI, which is this giant mess of goo that Java uses for native interoperability.

BRAD: I agree! The functionality is awesome, but it sits in a morass.

DON: We can't ignore the past. When we did the CLR, we knew we couldn't just say that unmanaged code is silly and no longer supported. We will always have to maintain continuity with the past. I wouldn't trade it.

BRAD: The aesthetics aren't as good as they could be. I come from the Win32 and COM mindset, so it works for me. However, people from other backgrounds may not grasp it as easily.

DON: Well, there's all that stuff under Windows Forms that I don't understand - buttons and text fields, for example - I don't know what they're about.

.NETDJ: How would you compare and contrast the .NET Framework to the J2EE class libraries? For example, is the similarity in System.Collections and System.IO coincidental, or is there a common ancestor of which I am unaware?

BRAD: There is a long history of runtime environments - LISP, Smalltalk (for the base library), and Java all share a lot of common functionality. Visual Basic has some elements of this, also.

I think that what you see is that there is a history of Base Class Libraries (BCL) and we tried to learn from all the history that was out there - what developers liked and disliked.

.NETDJ: Tell us a bit about your career leading up to becoming lead program manager for the .NET Framework team.

BRAD: I started at Microsoft seven years ago. Before that I did some interning when I was in college, including some with Nortel where we built their automated 411 system on a very early version of NT 4. I really enjoyed writing NT code, so I sent my resume to Microsoft and - oddly enough - they called me for an interview.

I had one of the best interview experiences! I started at 9 a.m. and had grueling interviews until 8 p.m. I don't know what happened, but I suspect that everyone I spoke with thought I had something, but that I wasn't quite right for their group. So they kept sending me on to other interviews. Luckily I eventually found someone that would take a chance and hire me! It was so late after my last interview that the shuttles were not running. It was dark, raining and I had no idea what building I was in. Thankfully, a nice Microsoft employee had sympathy for me and took me back to my car.

I did two summer internships, one with Expedia and one with Visual Basic 6, where we were adding control creation capabilities to Visual Basic. When I first joined Microsoft full time, I went to the Internet Explorer team and we shipped versions 4 and 4.1 at the end of the browser wars. I was the release program manager and got to go to all of the release meetings and to argue about all the decisions.

At the end, they were forming up a team to do a new language runtime and I had no idea what it was, but I signed up and it has worked out very well. I remember having hours of arguments about whether to do reference counting or garbage collection. I did the BCL, which evolved into a full Framework team right before the 2000 PDC. I moved back to the CLR team after we shipped version 1.0 of .NET, and I am still on the CLR team today, working mostly on WinFX - the next developer API.

.NETDJ: I know that you were involved with the drafting of the original Framework Design Guidelines for .NET, and the creation of FxCop to help enforce the guidelines. I hear that this kind of functionality is now one of the "preferences" that will ship with the new Team products for Visual Studio 2005. Are you involved with this?

BRAD: At the very beginning of the Framework, it was really obvious to us that we needed a set of design guidelines. The first argument we had was about casing - some folks wanted all uppercase and some people wanted VB-style. One of the program managers said that there was no way to enforce those, so we whipped out FxCop in a single weekend, just to prove him wrong! Some of the best tools in history are born out of necessity.

Since then, we update the FxCop document every week with new guidelines and new errors that are possible in new versions of the runtime. FxCop is a super-important tool for framework consistency. I'm very excited by the fact that we are going to start packaging this into the IDE with Visual Studio 2005, because our customers have very similar consistency issues.

.NETDJ: Well, the idea of arguments about design certainly piques my interest. Who was arguing for what?

BRAD: Anders [Hejlsberg] argued the Pascal standpoint about casing. The Visual Basic people favored uppercase for constants and such. Win32 and MFC both had strong casing heritages which their folks also advocated. Visual Basic, Win32, and MFC all had more users than Pascal on the Windows platform, so it certainly wasn't Anders bringing down tablets from on high -- we had some healthy debates.

It is interesting that we spent so much time debating it and the only complaints I hear from customers are where we don't follow our own guidelines. It's similar to the argument about where to place the curly brace.

I tried to bow out of the implementation arguments - since developers don't see our source code. It is hard enough to win the arguments that actually affect the adoption of our platform.

DON: So, back in the '90s the stock market grew and grew and people at some point thought the Dow would never stop - but it did. If I look at the number of classes that we ship, how should I think about the right number of classes?

BRAD: Well, I think what you are seeing right now is that with version 1 and version 1.1 we've hit a few core scenarios: Web pages and line of business, for example. We have the right set of classes for that.

If you look at Whidbey, we are doing all of this and more and it requires another set of classes. When we approach Longhorn, we are saying that we want all client applications to be written in managed code. This will require more functionality to be exposed and, therefore, even more classes.

DON: We have annual reviews at Microsoft. What would you think if we had engineering staff judged inversely based on how many classes they introduce?

BRAD: As we are doing Longhorn, I'm pretty involved in pulling it together. The problem is that with any metric, as soon as people know it, the smart people we hire would do everything in a single class and defeat the metric. I think what I have been talking about is simplicity: we need to get every person who checks in new APIs to think about simplicity. It is a hard battle. If you are the guy who is shipping the print queue, you want the absolute richest print queue API possible. Sometimes our folks don't see the sacrifice.

.NETDJ: Given that most developers still only use a single language for the vast majority of their work, do you think that maybe cross-language inheritance and its benefits are just not all that important?

BRAD: I think that it is a bigger benefit than people realize. Anybody building anything in VB.NET benefits from this on a daily basis, for example - since the Framework is largely written in C#. So, although it isn't a benefit that is right in our customers' faces, it is happening all the time. All of our component vendors can create components in whatever language they like and it will work for all of their customers - regardless of what language their customers may choose!

The other thing I think is really interesting is that I think it is fair to say that there were a number of people in the industry who were caught by surprise by how popular Java became so quickly. But what is the next language? Being a platform guy, I'm not nearly as interested in what the next language will be as I am interested in guaranteeing that - whatever the next language is - it will be able to work on our platform.

With Common Language Specification I don't even need to know because whatever it is will almost certainly target the CLS. Whether it is Ruby or Python or something invented by someone staying up late at Tech Ed - it will work great on the CLR.

.NETDJ: How did you determine the subset of .NET's functionality that got standardized, as opposed to being strictly for the commercial CLR?

BRAD: We always wanted to standardize the core runtime. As Don mentioned, it is huge and always growing. Of all the things we wanted to standardize, the programming languages were arguably the most important.

We had seen C++ and Smalltalk standardize their libraries, so we really wanted to provide a similar set of libraries that would work well - runtime-type libraries for 2000. We looked at what had been standardized with C and C++ and we said, if we had to do this again, it would have all of this stuff plus what? Network connectivity, XML, dynamic type inspection and invocation - all of these things are really important today, but weren't in the C and C++ standard libraries.

We wanted to standardize the bits that weren't platform or application specific, just the language runtime. We also just had to scope the amount of work the committee had to do. This wasn't necessarily for us, but the committee members had to review all of this material in detail, so there were some practical pressures.

.NETDJ: How did you come to work with Damien and Mark on the book Programming in the .NET Environment?

BRAD: I met both Damien and Mark through a Microsoft-funded initiative called Project 7. For Project 7, we went out to the community very early with the CLR. We were super-hushed about it, but we knew that we wanted to get a bunch of programming languages on board as early as possible. We talked to a lot of people in the programming languages community and I knew Damien and Mark through the whole development process. They were both good contributors in terms of saying what would be best for various languages. Damien was really the brain child of the book and he had a vision for what he wanted to do. I agreed to write a chapter and of course that turned into a couple of months. The book turned out to be a good high-level overview.

.NETDJ: I love the book, but I almost never read it because its place in the spectrum of .NET books wasn't immediately obvious to me. Can you explain that a little?

BRAD: We really hope the book provides - and we were thinking primarily about the academic market here - we wanted to provide an introduction to the .NET platform such that people who weren't necessarily from the Microsoft school of thought - people from CORBA or Java or whatever - would be able to understand the rational behind how we built our platform. The book is an experienced programmer's guide, really. Typically at Microsoft we think of all our developer education as building upon a history of working with our tools, and if you read our docs that's almost always where we think people are coming from. This usually turns out to be true, but in this book we wanted to take a different tack.

DON: When I look at the three primary pillars of Longhorn, I want to be able to sit down with you and be able to explain any one of them in five minutes or less. I think Indigo is there. If I look at WinFS, we are starting to get there. Avalon is huge and hard to understand all of it in five minutes. The thing that has me puzzled is that not everything is in these three buckets, what about the rest?

BRAD: Those three are roughly 80% - if you take out the existing Framework. I'm worried about some of the remaining 20%. But the 80% in WinFS, Indigo, and Avalon are - in terms of what developers are going to have to interact with - the types that people are going to use disproportionately.

.NETDJ: Designing an entire class library seems like an overwhelming task - how did you even get started with that? What class came first?

BRAD: System.Object came first. The truth is, no one person designed the entire .NET Framework - just like no one person will design WinFX. I view my role as producing a small set of classes that are good examples. We tried to make the BCL a good example and now we prepare training around that and evangelize to people like Don here how we think a good, consistent API will be built.

It is very much an iterative process. It is really not the case that we can sit down in a room with lots of super-smart people like Don [Box] and Anders [Hjelsberg] and design something. We get feedback from users, documenters, etc., and it takes the whole village to be able to do the design. I'm sure developers getting the tech previews of Whidbey will appreciate that there will be some more churn.

.NETDJ: What are your thoughts on the nondependent relationship between namespaces, directory structures, and assembly names?

BRAD: We really wanted to be very clear and unambiguous on what the packaging and deployment unit was - the Assembly. Namespaces are just something the compiler sticks in - without knowing anything about them. I think that most of the time, for the Framework, the basic assemblies are imported by default so that developers don't need to look at the assembly names.

I advise third parties that, as they develop, they should have some correspondence between their namespaces and their assembly names. I think in the end the performance overhead of having too many assemblies outweighs the potential benefits of having a strict one-to-one correspondence between namespaces and assembly names.

.NETDJ: What is your opinion on SSCLI, Mono, Portable .NET, etc.?

BRAD: I think it is a great validation of our technology that they are out there. To the extent that it is another vendor that is implementing the stuff that we have standardized, I think it is great. I think we have customers who get peace of mind from knowing that there are other core implementations available.

.NETDJ: Do you think it could ever prove problematic?

BRAD: I don't comment on potential legal issues. These implementations are neither licensed nor supported by Microsoft. I think that there is obviously some part of the framework that we didn't standardize and that isn't available through that, but I think that is an issue that those companies have to deal with. It certainly isn't something that I worry about on a day-to-day basis.

DON: We never talk about programming languages. I had dinner with Paul Vick last night, and I was telling him I thought it would be great if the number of language features in Orcas was less than in the version he is shipping now. Don't you think people would love a small language?

BRAD: I've been talking to a lot of customers and I am officially language-agnostic. It has been interesting to hear people talk about the conversions they have made over the last year or so. One customer moved from VB to C# - he said it was because C# is simpler. I do think that there is this concept of "addition through subtraction" - we can actually make things more powerful by taking away features. It is easy to preach, but hard to implement.

DON: I really wish more people at Microsoft worked in LISP or Smalltalk - they are minimal but powerful. And that's what makes them so amazing.

BRAD: I think one of the most important features in language design is the "obsolete" attribute. You can communicate instantly to any developer using an outdated feature that there is now a better way. We love our existing customers, but if you are writing new applications we want you to move on to places where we can support you better.

DON: I've talked a lot with other developers at Microsoft about obsolescing more stuff. People will invariably say "You mean add the OBSOLETE attribute," with a great deal of fear and trepidation in their voices. Do we need Bill's approval to get more aggressive about this, or what?

BRAD: We actually want to reward people for this. Sometimes people want to obsolete things for which there is no alternative - and that isn't good. But otherwise, we want the number of classes to go down and the number of obsoletes to go up.

DON: I'm on board with that plan! Don't obsolete Remoting before Indigo ships, though!

.NETDJ: How did you decide to change the data API yet again with ADO.NET? Wasn't that a gamble, considering how many data access API's have gone before?

BRAD: To be honest with you, I wasn't that involved in it. We do believe that introduction of the .NET Framework was an inflection point that only comes once in a blue moon. So this was probably the best time to introduce it. In terms of the exact tradeoffs, I'm not the right guy.

.NETDJ: Tell us a little bit about the work that went into creating the System.Runtime.InteropServices namespace, which is massive!

BRAD: I would love it if developers didn't need to do Interop. Unfortunately, there will always be developers who have code that was written 20 years ago and is unmanaged, and they need to keep working with it.

Most of the time, when people have to pInvoke or do COM Interop, it is to interoperate with existing Microsoft technologies like Word or Outlook. One of the primary drivers for WinFX is to drive this number way down, by writing more of our own stuff in managed code.

Adam Nathan from our team recently decided to start a Wiki (www.pinvoke.net) with all the pInvoke signatures for the common Win32 APIs. Then he added this mapping information that will tell you about the managed equivalent for whatever native API you are trying to invoke. I certainly hope that developers will use the managed versions where available!

.NETDJ: How are you working on WinFX? How do you coordinate the three teams WinFS, Avalon, and Indigo?

BRAD: My role with WinFX is almost like Geneva - I do "the Switzerland thing." We have all these teams and they all have super-smart guys working on their teams and doing API design. However, they all necessarily look at the world through their own colored glasses. That's what we need them to do to build the greatest versions of their products.

However, there are very few Indigo-only, Avalon-only, or WinFS-only applications. So I lead a broad team that looks at the big picture and, as a classic Microsoft Program Manager, I have to work on building consensus and getting guys like Don Box here into a room to argue about what their products are and what they should do within the context of WinFX as a whole.

DON: What programming language do you use?

BRAD: I usually write IL directly. No, seriously, I use C# most of the time. I grew up with the semicolon language feature and it feels most natural to me.

.NETDJ: What namespace do you think is most overlooked and neglected in the Framework?

BRAD: System.Collections.Specialized has a few classes in there that we needed for the Framework. It had nothing to do with externals, but folks on the ASP.NET team needed some of this stuff. We came up with some real jewels - there are some real good ones in there. Because it has a bit of an obtuse namespace, most people have never touched it. If you are building object models on version 1.1 today, though, you should definitely look there.

.NETDJ: I have a personal dislike for the System.Management and System.DirectoryServices namespaces - they seem to be just a little too native. Can we look forward to a gradual "managization" of these namespaces going forward?

BRAD: Some people say that System.Management is difficult to use because it is loosely typed, but I just heard a guy yesterday saying that he loves it because it can do anything he wants to do and he is able to get it done because it exposes a flexible model. It is difficult to reach a balance that will please everyone.

DON: Talk to me about performance. I am a programmer who hypothetically is skeptical about managed code. At what point does it become obvious that I have to write managed code? For example, there are usually two primary concerns in moving to managed code. One is the skills (people don't know it). The other is always concern about performance. The skills one is never going to go away, but at what point does the performance flip to being a problem if you don't change to managed code?

BRAD: The general answer is that you should pick the natural product point in your development cycle. If you have a Visual Basic 6 application and you're happy with it, then don't rewrite it just for the hell of it. The interesting thing about performance is that we have been actively soliciting performance stories from attendees and almost universally the answer is that no one has had any performance problems. Most people are coming to ASP.NET from "classic" ASP, so that is an easy performance battle to win! On client applications, they usually say that they haven't noticed any issues. Then we say, "Some people have asked us about startup times" - that generally gets a response where people roll their eyes and acknowledge that they have noticed it. That is an annoyance for some people, but it is the number one issue we are spending the most development time to correct at this point. So you asked, "When do you think it will come to a point where developers will get better performance using managed code?" It is all about the functionality you expose. For example, it will always be faster to write an Indigo application in managed code than its native layers, because we will expose that functionality in managed code.

DON: I think Longhorn is the tipping point, then. The three main pillars are in managed code - so accessing them via COM will require Interop, and its associated performance hit!

BRAD: We totally want people to be able to take a slow migration, though. We have a lot of internal customers that are still 100% native Win32!

DON: Office is one of those customers, of course.

BRAD: Yes, of course, we are not going to "deltree" Office.

DON: What is deltree!?

BRAD: It is an old DOS command.

DON: Oh, I was thinking that "rm -r" was able to do that.

More Stories By Derek Ferguson

Derek Ferguson, founding editor and editor-in-chief of .Net Developer's Journal, is a noted technology expert and former Microsoft MVP.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

@ThingsExpo Stories
"We provide IoT solutions. We provide the most compatible solutions for many applications. Our solutions are industry agnostic and also protocol agnostic," explained Richard Han, Head of Sales and Marketing and Engineering at Systena America, in this SYS-CON.tv interview at @ThingsExpo, held June 6-8, 2017, at the Javits Center in New York City, NY.
"We've been engaging with a lot of customers including Panasonic, we've been involved with Cisco and now we're working with the U.S. government - the Department of Homeland Security," explained Peter Jung, Chief Product Officer at Pulzze Systems, in this SYS-CON.tv interview at @ThingsExpo, held June 6-8, 2017, at the Javits Center in New York City, NY.
SYS-CON Events announced today that Calligo, an innovative cloud service provider offering mid-sized companies the highest levels of data privacy and security, has been named "Bronze Sponsor" of SYS-CON's 21st International Cloud Expo ®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Calligo offers unparalleled application performance guarantees, commercial flexibility and a personalised support service from its globally located cloud plat...
Internet of @ThingsExpo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 21st Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devic...
"The Striim platform is a full end-to-end streaming integration and analytics platform that is middleware that covers a lot of different use cases," explained Steve Wilkes, Founder and CTO at Striim, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
SYS-CON Events announced today that DXWorldExpo has been named “Global Sponsor” of SYS-CON's 21st International Cloud Expo, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Digital Transformation is the key issue driving the global enterprise IT business. Digital Transformation is most prominent among Global 2000 enterprises and government institutions.
SYS-CON Events announced today that Datera, that offers a radically new data management architecture, has been named "Exhibitor" of SYS-CON's 21st International Cloud Expo ®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Datera is transforming the traditional datacenter model through modern cloud simplicity. The technology industry is at another major inflection point. The rise of mobile, the Internet of Things, data storage and Big...
"We are focused on SAP running in the clouds, to make this super easy because we believe in the tremendous value of those powerful worlds - SAP and the cloud," explained Frank Stienhans, CTO of Ocean9, Inc., in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
DX World EXPO, LLC., a Lighthouse Point, Florida-based startup trade show producer and the creator of "DXWorldEXPO® - Digital Transformation Conference & Expo" has announced its executive management team. The team is headed by Levent Selamoglu, who has been named CEO. "Now is the time for a truly global DX event, to bring together the leading minds from the technology world in a conversation about Digital Transformation," he said in making the announcement.
"MobiDev is a Ukraine-based software development company. We do mobile development, and we're specialists in that. But we do full stack software development for entrepreneurs, for emerging companies, and for enterprise ventures," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
While the focus and objectives of IoT initiatives are many and diverse, they all share a few common attributes, and one of those is the network. Commonly, that network includes the Internet, over which there isn't any real control for performance and availability. Or is there? The current state of the art for Big Data analytics, as applied to network telemetry, offers new opportunities for improving and assuring operational integrity. In his session at @ThingsExpo, Jim Frey, Vice President of S...
SYS-CON Events announced today that DXWorldExpo has been named “Global Sponsor” of SYS-CON's 21st International Cloud Expo, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Digital Transformation is the key issue driving the global enterprise IT business. Digital Transformation is most prominent among Global 2000 enterprises and government institutions.
In his opening keynote at 20th Cloud Expo, Michael Maximilien, Research Scientist, Architect, and Engineer at IBM, discussed the full potential of the cloud and social data requires artificial intelligence. By mixing Cloud Foundry and the rich set of Watson services, IBM's Bluemix is the best cloud operating system for enterprises today, providing rapid development and deployment of applications that can take advantage of the rich catalog of Watson services to help drive insights from the vast t...
SYS-CON Events announced today that EnterpriseTech has been named “Media Sponsor” of SYS-CON's 21st International Cloud Expo, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. EnterpriseTech is a professional resource for news and intelligence covering the migration of high-end technologies into the enterprise and business-IT industry, with a special focus on high-tech solutions in new product development, workload management, increased effic...
SYS-CON Events announced today that Massive Networks, that helps your business operate seamlessly with fast, reliable, and secure internet and network solutions, has been named "Exhibitor" of SYS-CON's 21st International Cloud Expo ®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. As a premier telecommunications provider, Massive Networks is headquartered out of Louisville, Colorado. With years of experience under their belt, their team of...
SYS-CON Events announced today that Cloud Academy named "Bronze Sponsor" of 21st International Cloud Expo which will take place October 31 - November 2, 2017 at the Santa Clara Convention Center in Santa Clara, CA. Cloud Academy is the industry’s most innovative, vendor-neutral cloud technology training platform. Cloud Academy provides continuous learning solutions for individuals and enterprise teams for Amazon Web Services, Microsoft Azure, Google Cloud Platform, and the most popular cloud com...
SYS-CON Events announced today that Cloudistics, an on-premises cloud computing company, has been named “Bronze Sponsor” of SYS-CON's 21st International Cloud Expo, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Cloudistics delivers a complete public cloud experience with composable on-premises infrastructures to medium and large enterprises. Its software-defined technology natively converges network, storage, compute, virtualization, and ...
SYS-CON Events announced today that CHEETAH Training & Innovation will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct. 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. CHEETAH Training & Innovation is a cloud consulting and IT training firm specializing in improving clients cloud strategies and infrastructures for medium to large companies.
SYS-CON Events announced today that Datanami has been named “Media Sponsor” of SYS-CON's 21st International Cloud Expo, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Datanami is a communication channel dedicated to providing insight, analysis and up-to-the-minute information about emerging trends and solutions in Big Data. The publication sheds light on all cutting-edge technologies including networking, storage and applications, and thei...
The current age of digital transformation means that IT organizations must adapt their toolset to cover all digital experiences, beyond just the end users’. Today’s businesses can no longer focus solely on the digital interactions they manage with employees or customers; they must now contend with non-traditional factors. Whether it's the power of brand to make or break a company, the need to monitor across all locations 24/7, or the ability to proactively resolve issues, companies must adapt to...