"What is the next step in the evolution of IoT systems? The answer is data, information, which is a radical shift from assets, from things to input for decision making," stated Michael Minkevich, VP of Technology Services at Luxoft, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.| By Manuel Weiss | Article Rating: |
|
| October 19, 2013 05:00 PM EDT | Reads: |
5,313 |
If you have a slow test suite and you are asking yourself "how can I make my tests faster?" then you are asking the wrong question. Most chances are that you have bigger problems than just slow tests. The test slowness is merely the symptom; what you should really address is the cause. Once the real cause is addressed you will find that it's easy to write new fast tests and straightforward to refactor existing tests.
It's surprising how quickly a rails app's test suite can become slow. It's important to understand the reason for this slowness early on and address the real cause behind it. In most cases the reason is excessive coupling between the domain objects themselves and coupling between these objects and the framework.
In this refactoring walk-through we will see how small, incremental improvements to the design of a rails app, and specifically, decoupling, naturally lead to faster tests. We will extract service objects, completely remove all rails dependencies in test time and otherwise reduce the amount of coupling in the app.
Our goal is to have a simple, flexible and easy to maintain system in which objects can be replaced with other objects with minimal code changes. We will strive to achieve this goal and observe the effect of it on our tests speed.
Starting with a Fat Controller
Suppose we have a controller that's responsible for handling users signing up for a mailing list:
class MailingListsController < ApplicationController
respond_to :json
def add_user
user = User.find_by!(username: params[:username])
NotifiesUser.run(user, 'blog_list')
user.update_attributes(mailing_list_name: 'blog_list')
respond_with user
end
end
We first find the user (an exception is raised if the user is not found). Then we notify the user she was added to the mailing list via NotifiesUser (probably asking her to confirm). We update the user record with the name of the mailing list and then hand the user object to respond_with, which will render the json representation of the user or the proper error response in case saving of the object failed.
The logic here is pretty straight-forward, but it's still too complicated for a controller and should be extracted out. But where to? The word user in every line in this method suggests that we should push it into the User model (that's called Feature Envy). Let's try this:
Extracting Logic to a Fat Model
class MailingListsController < ApplicationController
respond_to :json
def add_user
user = User.add_to_mailing_list(params[:username], 'blog_list')
respond_with user
end
end
class User < ActiveRecord::Base
validates_uniqueness_of :username
def self.add_to_mailing_list(username, mailing_list_name)
user = User.find_by!(username: username)
NotifiesUser.run(user, 'blog_list')
user.update_attributes(mailing_list_name: 'blog_list')
user
end
end
This is better: the User class is now responsible for creating and updating users. But there is a problem: now User is handling mailing list additions, as well as user notifications. These are too many responsibilities for one class. Having an active record object handle anything more than CRUD, associations and validations is a (further) violation of the Single Responsibility Principle.
The result is that business logic in active record classes is a pain to unit test. You often need to use factories or to heavily stub out methods of the object under test (don't do that), stub all instances of the class under test (don't do that either) or hit the database in your unit tests (please don't). As a result, testing active record objects can be very slow, sometimes orders of magnitude slower than testing plain ruby objects.
Now, if the code above was the entire User class and my application was small and simple I might have been happy with leaving User#add_to_mailing_list as is. But in a bit bigger rails apps that are not groomed often enough, models, controllers and domain logic tend to get tangled (coupled) together and needlessly complicate things (Rich Hickey, the inventor of clojure, calls it incidental complexity). This is when introducing a service objectis helpful:
Extracting a Service Object
class MailingListsController < ApplicationController
respond_to :json
def add_user
user = AddsUserToList.run(params[:username], 'blog_list')
respond_with user
end
end
class AddsUserToList
def self.run(username, mailing_list_name)
user = User.find_by!(username: username)
NotifiesUser.run(user, 'blog_list')
user.update_attributes(mailing_list_name: 'blog_list')
user
end
end
We created a plain ruby object, AddsUserToList, which contains the business logic from before. In the controller we call this object and not User directly. This is an improvement, but hard-coding the name of the class of your collaborator is a bad idea since it couples the two together and makes it impossible to replace the class with a different implementation. Not surprisingly, the result of this coupling is that testing becomes harder and tests slower. Testing this service object would require us to somehow stub User#find_by! to avoid hitting the database, and probably also stub out NotifiesUser#run in order to avoid sending a real notification out.
Also, referencing the class User directly means that our unit tests will have to load active record and the entire rails stack, but even worse - the entire app and its dependencies. This load time can be a few seconds for trivial rails apps, but can sometimes be 30 seconds for bigger apps. Unit tests should be fast to run as part of your test suite but also fast to run individually, which means they should not load the rails stack or your application (also seeCorey Haines's talk on the subject).
The most straight forward way to decouple the object from its collaborators is to inject the dependencies of AddsUserToList:
Injecting Dependencies
class AddsUserToList
def self.run(username, mailing_list_name, finds_user = User, notifies_user = NotifiesUser)
finds_user.find_by!(username: username)
notifies_user.(user, mailing_list_name)
user.update_attributes(mailing_list_name: mailing_list_name)
user
end
end
We can now pass as an argument any class that finds a user and any class that notifies a user, which means that passing different implementations will be easy. It also means that testing will be easier. Since we supplied reasonable defaults we don't need to be explicit about these dependencies if we don't change them, and our controller can stay unchanged.
The fact that we are specifying User as the default value of finds_user in the parameter list does not mean that this class and all its dependents (ActiveRecord, our app and other gems) will get loaded. Ruby's Deferred Evaluation of the default values means that if these default values are not needed they will not get loaded, so we can run this unit test without loading rails.
Simplifying the Interface
The method AddsUserToList#run receives 4 arguments. Users of this method need to know the order of the list. Also, it is likely that over time you'd discover you need to add more arguments. When this happens you will need to update all users of the method. A more flexible solution is to use a hash of arguments. This will make the interface more stable and ensure the number of arguments does not grow when we find that we need to add more arguments. It will also make refactoring a little easier, which is important. I often find that for many classes I end up changing from an argument list to a hash of arguments at some point, so why not use it in the first place? But does it mean that we need to give up the advantages of deferred evaluation of the default values? Not at all.
We will use Hash#fetch, passing a block to it, which will not get evaluated unless the queried key is absent. In our tests, the code in the block to fetch will never get evaluated, and User won't get loaded. Also, when specifying the defaults in the argument list it is not possible to evaluate more than one statement, but we can do it using Hash#fetch.
One more thing: when my classes contain only one public method I don't like calling it run, do or perform since these names don't convey a lot of information. In this case I'd rather call it call and use ruby's shorthand notation for invoking this method. This also enables me to pass in a proc instead of the class itself if I need it.
class AddsUserToList
def self.run(args)
finds_user = args.fetch(:finds_user) { User }
notifies_user = args.fetch(:notifies_user) { NotifiesUser }
finds_user.find_by!(username: args.fetch(:username))
notifies_user.(user, args.fetch(:mailing_list_name))
user.update_attributes(mailing_list_name: args.fetch(:mailing_list_name))
user
end
end
Using Ruby 2.1's Keyword Arguments Syntax
We can get the same exact functionality by using ruby's 2.1's keyword argument syntax. See how much less verbose this version is:
class AddsUserToList
def self.call(username:, mailing_list_name:, finds_user: User,
notifies_user: NotifiesUser)
user = finds_user.find_by_username!(username)
notifies_user.(user, mailing_list_name)
user.add_to_mailing_list(mailing_list_name)
user
end
end
Published October 19, 2013 Reads 5,313
Copyright © 2013 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
- Top Sales Assessment Test Surpasses Sales Aptitude Tests or Sales Personality Tests in Pre Hire Testing of Salespeople
- The Lippis Report and Ixia Complete Second Round of 10GE Open Networking Performance and Power Tests for Data Center Clouds
- IP Cameras Are the Next Growth Area in China's Video Surveillance Equipment Market
More Stories By Manuel Weiss
I am the cofounder of Codeship – a hosted Continuous Integration and Deployment platform for web applications. On the Codeship blog we love to write about Software Testing, Continuos Integration and Deployment. Also check out our weekly screencast series 'Testing Tuesday'!
"What is the next step in the evolution of IoT systems? The answer is data, information, which is a radical shift from assets, from things to input for decision making," stated Michael Minkevich, VP of Technology Services at Luxoft, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.Dec. 25, 2015 12:00 AM EST Reads: 394 |
By Pat Romanski "IoT is really hitting its stride. The adoption rates are increasing and Vitria is in a good position to help people deliver on the value of IoT," explained Mike Houston, Marketing & Product Marketing Professional at Vitria Technology, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.Dec. 25, 2015 12:00 AM EST Reads: 399 |
By Pat Romanski "IoT is going to be a huge industry with a lot of value for end users, for industries, for consumers, for manufacturers. How can we use cloud to effectively manage IoT applications," stated Ian Khan, Innovation & Marketing Manager at Solgeniakhela, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.Dec. 24, 2015 11:15 PM EST Reads: 373 |
By Pat Romanski Contrary to mainstream media attention, the multiple possibilities of how consumer IoT will transform our everyday lives aren’t the only angle of this headline-gaining trend. There’s a huge opportunity for “industrial IoT” and “Smart Cities” to impact the world in the same capacity – especially during critical situations. For example, a community water dam that needs to release water can leverage embedded critical communications logic to alert the appropriate individuals, on the right device, as soon as they are needed to take action.Dec. 24, 2015 05:00 PM EST Reads: 310 |
By Elizabeth White When it comes to IoT in the enterprise, namely the commercial building and hospitality markets, a benefit not getting the attention it deserves is energy efficiency, and IoT’s direct impact on a cleaner, greener environment when installed in smart buildings. Until now clean technology was offered piecemeal and led with point solutions that require significant systems integration to orchestrate and deploy. There didn't exist a 'top down' approach that can manage and monitor the way a Smart Building actually breathes - immediately flagging overheating in a closet or over cooling in unoccupied ho...Dec. 24, 2015 04:30 PM EST Reads: 281 |
By Pat Romanski WebRTC services have already permeated corporate communications in the form of videoconferencing solutions. However, WebRTC has the potential of going beyond and catalyzing a new class of services providing more than calls with capabilities such as mass-scale real-time media broadcasting, enriched and augmented video, person-to-machine and machine-to-machine communications.
In his session at @ThingsExpo, Luis Lopez, CEO of Kurento, introduced the technologies required for implementing these ideas and some early experiments performed in the Kurento open source software community in areas such...Dec. 24, 2015 03:30 PM EST Reads: 445 |
By Liz McMillan "We announced CryptoScript, it's a new way of programming a hardware security module, which technically requires standard APIs and very specific knowledge. With CryptoScript we hope to change that a bit," explained Johannes Lintzen, Vice President of Sales at Utimaco, in this SYS-CON.tv interview at 17th Cloud Expo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.Dec. 24, 2015 03:00 PM EST Reads: 272 |
By Liz McMillan There are so many tools and techniques for data analytics that even for a data scientist the choices, possible systems, and even the types of data can be daunting.
In his session at @ThingsExpo, Chris Harrold, Global CTO for Big Data Solutions for EMC Corporation, showed how to perform a simple, but meaningful analysis of social sentiment data using freely available tools that take only minutes to download and install. Participants received the download information, scripts, and complete end-to-end walkthrough of the analysis from start to finish, and were also given the practical knowledge ...Dec. 24, 2015 01:00 PM EST Reads: 213 |
By Elizabeth White "At Sensorberg we are providing a cloud-based beacon management platform and this allows you to control the various beacons that you have in your fleet as well as design various campaigns and triggers which the beacons will initiate," explained Daniel Gillard, Business Development Manager at Sensorberg GmbH, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.Dec. 24, 2015 12:15 PM EST Reads: 149 |
By Liz McMillan Organizations already struggle with the simple collection of data resulting from the proliferation of IoT, lacking the right infrastructure to manage it. They can't only rely on the cloud to collect and utilize this data because many applications still require dedicated infrastructure for security, redundancy, performance, etc.
In his session at 17th Cloud Expo, Emil Sayegh, CEO of Codero Hosting, discussed how in order to resolve the inherent issues, companies need to combine dedicated and cloud solutions through hybrid hosting – a sustainable solution for the data required to manage IoT de...Dec. 24, 2015 09:30 AM EST Reads: 561 |
By Pat Romanski Consumer IoT applications provide data about the user that just doesn’t exist in traditional PC or mobile web applications. This rich data, or “context,” enables the highly personalized consumer experiences that characterize many consumer IoT apps. This same data is also providing brands with unprecedented insight into how their connected products are being used, while, at the same time, powering highly targeted engagement and marketing opportunities.
In his session at @ThingsExpo, Nathan Treloar, President and COO of Bebaio, explored examples of brands transforming their businesses by tappi...Dec. 24, 2015 07:00 AM EST Reads: 536 |
By Elizabeth White The broad selection of hardware, the rapid evolution of operating systems and the time-to-market for mobile apps has been so rapid that new challenges for developers and engineers arise every day. Security, testing, hosting, and other metrics have to be considered through the process.
In his session at @ThingsExpo, Walter Maguire, Chief Field Technologist, HP Big Data Group, at Hewlett-Packard, discussed the challenges faced by developers and a composite Big Data applications builder, focusing on how to help solve the problems that developers are continuously battling.Dec. 24, 2015 05:00 AM EST Reads: 537 |
By Pat Romanski "As a technology provider we believe that business comes first and customers should start thinking that technology is something that helps them to enable new business models," stated Ermanno Bonifazi, Founder and CEO of Solgenia, in this SYS-CON.tv interview at 17th Cloud Expo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.Dec. 24, 2015 05:00 AM EST Reads: 464 |
By Pat Romanski "We're seeing a lot of activity in IoT in the healthcare space - a lot of new devices coming in. We are seeing a huge demand in building smart offices, smart infrastructures, smart cloud applications," explained Shrikant Pattathil, President of Harbinger Systems, in this SYS-CON.tv interview at 17th Cloud Expo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.Dec. 24, 2015 02:00 AM EST Reads: 432 |
By Pat Romanski "Storage is growing. All of IDC's estimates say that unstructured data is now 80% of the world's data. We provide storage systems that can actually deal with that scale of data - software-defined storage systems," stated Paul Turner, Chief Product and Marketing Officer at Cloudian, in this SYS-CON.tv interview at 17th Cloud Expo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.Dec. 23, 2015 02:00 PM EST Reads: 372 |
By Carmen Gonzalez Internet of @ThingsExpo, taking place June 7-9, 2016 at Javits Center, New York City and Nov 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with the 18th International @CloudExpo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world and ThingsExpo New York Call for Papers is now open.
Dec. 22, 2015 03:15 PM EST Reads: 911 |
By Carmen Gonzalez With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York and Silicon Valley. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place Nov 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 17th 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 cha...Dec. 22, 2015 12:30 PM EST Reads: 927 |
By Pat Romanski Electric power utilities face relentless pressure on their financial performance, and reducing distribution grid losses is one of the last untapped opportunities to meet their business goals. Combining IoT-enabled sensors and cloud-based data analytics, utilities now are able to find, quantify and reduce losses faster – and with a smaller IT footprint. Solutions exist using Internet-enabled sensors deployed temporarily at strategic locations within the distribution grid to measure actual line loads.Dec. 22, 2015 05:00 AM EST Reads: 605 |
By Pat Romanski "The problem with IoT today is that people aren't looking to buy IoT, what they're really trying to do is buy a business outcome or trying to figure out ways to improve the business outcome. It just so happens that IoT may be the technology that can help do that," stated Dave McCarthy, Director of Products at Bsquare Corporation, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.Dec. 22, 2015 03:00 AM EST Reads: 397 |
By Carmen Gonzalez There are over 120 breakout sessions in all, with Keynotes, General Sessions, and Power Panels adding to three days of incredibly rich presentations and content. Join @ThingsExpo conference chair Roger Strukhoff (@IoT2040), June 7-9, 2016 in New York City, for three days of intense 'Internet of Things' discussion and focus, including Big Data's indespensable role in IoT, Smart Grids and Industrial Internet of Things, Wearables and Consumer IoT, as well as (new) IoT's use in Vertical Markets.
Dec. 21, 2015 02:00 PM EST Reads: 891 |

"IoT is really hitting its stride. The adoption rates are increasing and Vitria is in a good position to help people deliver on the value of IoT," explained Mike Houston, Marketing & Product Marketing Professional at Vitria Technology, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
"IoT is going to be a huge industry with a lot of value for end users, for industries, for consumers, for manufacturers. How can we use cloud to effectively manage IoT applications," stated Ian Khan, Innovation & Marketing Manager at Solgeniakhela, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
Contrary to mainstream media attention, the multiple possibilities of how consumer IoT will transform our everyday lives aren’t the only angle of this headline-gaining trend. There’s a huge opportunity for “industrial IoT” and “Smart Cities” to impact the world in the same capacity – especially during critical situations. For example, a community water dam that needs to release water can leverage embedded critical communications logic to alert the appropriate individuals, on the right device, as soon as they are needed to take action.
When it comes to IoT in the enterprise, namely the commercial building and hospitality markets, a benefit not getting the attention it deserves is energy efficiency, and IoT’s direct impact on a cleaner, greener environment when installed in smart buildings. Until now clean technology was offered piecemeal and led with point solutions that require significant systems integration to orchestrate and deploy. There didn't exist a 'top down' approach that can manage and monitor the way a Smart Building actually breathes - immediately flagging overheating in a closet or over cooling in unoccupied ho...
WebRTC services have already permeated corporate communications in the form of videoconferencing solutions. However, WebRTC has the potential of going beyond and catalyzing a new class of services providing more than calls with capabilities such as mass-scale real-time media broadcasting, enriched and augmented video, person-to-machine and machine-to-machine communications.
In his session at @ThingsExpo, Luis Lopez, CEO of Kurento, introduced the technologies required for implementing these ideas and some early experiments performed in the Kurento open source software community in areas such...
"We announced CryptoScript, it's a new way of programming a hardware security module, which technically requires standard APIs and very specific knowledge. With CryptoScript we hope to change that a bit," explained Johannes Lintzen, Vice President of Sales at Utimaco, in this SYS-CON.tv interview at 17th Cloud Expo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
There are so many tools and techniques for data analytics that even for a data scientist the choices, possible systems, and even the types of data can be daunting.
In his session at @ThingsExpo, Chris Harrold, Global CTO for Big Data Solutions for EMC Corporation, showed how to perform a simple, but meaningful analysis of social sentiment data using freely available tools that take only minutes to download and install. Participants received the download information, scripts, and complete end-to-end walkthrough of the analysis from start to finish, and were also given the practical knowledge ...
"At Sensorberg we are providing a cloud-based beacon management platform and this allows you to control the various beacons that you have in your fleet as well as design various campaigns and triggers which the beacons will initiate," explained Daniel Gillard, Business Development Manager at Sensorberg GmbH, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
Organizations already struggle with the simple collection of data resulting from the proliferation of IoT, lacking the right infrastructure to manage it. They can't only rely on the cloud to collect and utilize this data because many applications still require dedicated infrastructure for security, redundancy, performance, etc.
In his session at 17th Cloud Expo, Emil Sayegh, CEO of Codero Hosting, discussed how in order to resolve the inherent issues, companies need to combine dedicated and cloud solutions through hybrid hosting – a sustainable solution for the data required to manage IoT de...
Consumer IoT applications provide data about the user that just doesn’t exist in traditional PC or mobile web applications. This rich data, or “context,” enables the highly personalized consumer experiences that characterize many consumer IoT apps. This same data is also providing brands with unprecedented insight into how their connected products are being used, while, at the same time, powering highly targeted engagement and marketing opportunities.
In his session at @ThingsExpo, Nathan Treloar, President and COO of Bebaio, explored examples of brands transforming their businesses by tappi...
The broad selection of hardware, the rapid evolution of operating systems and the time-to-market for mobile apps has been so rapid that new challenges for developers and engineers arise every day. Security, testing, hosting, and other metrics have to be considered through the process.
In his session at @ThingsExpo, Walter Maguire, Chief Field Technologist, HP Big Data Group, at Hewlett-Packard, discussed the challenges faced by developers and a composite Big Data applications builder, focusing on how to help solve the problems that developers are continuously battling.
"As a technology provider we believe that business comes first and customers should start thinking that technology is something that helps them to enable new business models," stated Ermanno Bonifazi, Founder and CEO of Solgenia, in this SYS-CON.tv interview at 17th Cloud Expo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
"We're seeing a lot of activity in IoT in the healthcare space - a lot of new devices coming in. We are seeing a huge demand in building smart offices, smart infrastructures, smart cloud applications," explained Shrikant Pattathil, President of Harbinger Systems, in this SYS-CON.tv interview at 17th Cloud Expo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
"Storage is growing. All of IDC's estimates say that unstructured data is now 80% of the world's data. We provide storage systems that can actually deal with that scale of data - software-defined storage systems," stated Paul Turner, Chief Product and Marketing Officer at Cloudian, in this SYS-CON.tv interview at 17th Cloud Expo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
Internet of @ThingsExpo, taking place June 7-9, 2016 at Javits Center, New York City and Nov 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with the 18th International @CloudExpo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world and ThingsExpo New York Call for Papers is now open.
With major technology companies and startups seriously embracing IoT strategies, now is the perfect time to attend @ThingsExpo 2016 in New York and Silicon Valley. Learn what is going on, contribute to the discussions, and ensure that your enterprise is as "IoT-Ready" as it can be! Internet of @ThingsExpo, taking place Nov 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 17th 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 cha...
Electric power utilities face relentless pressure on their financial performance, and reducing distribution grid losses is one of the last untapped opportunities to meet their business goals. Combining IoT-enabled sensors and cloud-based data analytics, utilities now are able to find, quantify and reduce losses faster – and with a smaller IT footprint. Solutions exist using Internet-enabled sensors deployed temporarily at strategic locations within the distribution grid to measure actual line loads.
"The problem with IoT today is that people aren't looking to buy IoT, what they're really trying to do is buy a business outcome or trying to figure out ways to improve the business outcome. It just so happens that IoT may be the technology that can help do that," stated Dave McCarthy, Director of Products at Bsquare Corporation, in this SYS-CON.tv interview at @ThingsExpo, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
There are over 120 breakout sessions in all, with Keynotes, General Sessions, and Power Panels adding to three days of incredibly rich presentations and content. Join @ThingsExpo conference chair Roger Strukhoff (@IoT2040), June 7-9, 2016 in New York City, for three days of intense 'Internet of Things' discussion and focus, including Big Data's indespensable role in IoT, Smart Grids and Industrial Internet of Things, Wearables and Consumer IoT, as well as (new) IoT's use in Vertical Markets.
Early (very early, in fact) in the rise of SDN there were many discussions around scalability. Not of the data plane, but of the control (management) plane. Key to this discussion was the rate at which SDN-enabled network devices, via OpenFlow, could perform “inserts”. That is, how many times per second/minute could the management plane make the changes necessary to adjust to the environment.
It was this measurement that turned out to be problematic, with many well-respected networking pundits ...
In their Live Hack” presentation at 17th Cloud Expo, Stephen Coty and Paul Fletcher, Chief Security Evangelists at Alert Logic, provided the audience with a chance to see a live demonstration of the common tools cyber attackers use to attack cloud and traditional IT systems.
This “Live Hack” used open source attack tools that are free and available for download by anybody. Attendees learned where to find and how to operate these tools for the purpose of testing their own IT infrastructure. The...
"With DevOps, with the development side and operations side, typically they worked in these vertical cylinders of excellence, what some people call silos, and what G2G3 does is we bring that together," explained Gordon Brown, Head of G2G3 Americas, in this SYS-CON.tv interview at DevOps Summit, held November 3-5, 2015, at the Santa Clara Convention Center in Santa Clara, CA.
The rise of cloud-based infrastructure was one of the biggest developments in IT during the past few years, and now we are seeing extensive innovations in cloud security as well. More companies are moving their business-critical data away from onsite data centers and into cloud-based infrastructure. With that in mind, 2016 is going to be another dynamic year for cloud security, as more users and IT teams will be looking for ways to enhance their cloud security while achieving heightened visibili...
Cognizant Infrastructure Services has worked with a large telecommunications and Internet services company to make DevOps benefits a practical reality.
We'll learn important ways to successfully usher DevOps into any large, complex enterprise IT environment, and we'll hear best practices on making DevOps a multi-generational accelerant to broader business goals -- such as adapting to the Internet of Things (IoT) requirements, advancing mobile development, and allowing for successful cloud comp...
The holidays are finally here and we wanted to celebrate by providing you with The 12 DevOps Tricks of Christmas. Our engineers not only live the DevOps lifestyle daily, but also do regular DevOps consulting for global 2000 organizations. I asked each of them to provide me with a couple tips that will help any enterprise’s DevOps culture work better. These are The 12 DevOps Tricks of Christmas.
Here at VictorOps, we rely heavily on Akka and during my time working with the environment/tool/language, I started seeing similarities between microservices and actors. Actors allow you to take pieces of your app, put them on their own servers and then enable them to communicate via HTTP. You can scale the app in places where there are bottlenecks and apply resources without being wasteful.
Earlier this morning on #c9d9 we talked about the drivers for using cloud resources along the different stages of your pipeline. We also talked about some of the challenges and best practices for streamlining your processes when using the cloud to empower developers to go fast, while ensuring governance and control.
There are educational options available for nearly anyone interested in learning a new skill or changing their career altogether. And it’s only getting better. So what if you want to get an education in software testing? Fortunately, you have a few options.
Duke. Stanford. Rice.
When you hear those names, what do you think of? You're probably thinking of some of the top universities in the US - or more likely their sports teams.
In a VentureBeat article the author describes ‘the future of enterprise tech‘, describing how pioneering organizations like Netflix are entirely embracing a Cloud paradigm for their business, moving away from the traditional approach of owning and operating your own data centre populated by EMC, Oracle and VMware.
Instead they are moving to ‘web scale IT’ via on demand rental of containers, commodity hardware and NoSQL databases, but critically it’s not just about swapping out the infrastructur...
Manufacturing has widely adopted standardized and automated processes to create designs, build them, and maintain them through their life cycle. However, many modern manufacturing systems go beyond mechanized workflows to introduce empowered workers, flexible collaboration, and rapid iteration.
Such behaviors also characterize open source software development and are at the heart of DevOps culture, processes, and tooling.
In today's rapidly changing IT world, database experts who wish to remain relevant must keep up-to-date on all kinds of technology - both database-related and other.
DBAs should understand new data-related technologies but also other newer technologies that interact with database systems. Don't ignore industry and technology trends simply because you cannot immediately think of a database-related impact. Many non-database-related "things" eventually find their way into DBMS software and databas...
Containers have changed the mind of IT in DevOps. They enable developers to work with dev, test, stage and production environments identically. Containers provide the right abstraction for microservices and many cloud platforms have integrated them into deployment pipelines. DevOps and containers together help companies achieve their business goals faster and more effectively.
In his session at DevOps Summit, Ruslan Synytsky, CEO and Co-founder of Jelastic, reviewed the current landscape of De...
Did you think we forgot about our good friends Agile and Continuous Integration? With all the buzz around DevOps looking towards 2016, it’s been challenging to focus on anything else. DevOps, Agile, CI and Continuous Delivery are all joined at the hip, and this past week saw some great articles on these methodologies on our news feed. According to Joe Feccorata from InfoQ, adopting Agile practices can actually increase employee satisfaction. Not only can Agile promise happiness in the workplace,...
Monitoring Node.js Applications has special challenges. The dynamic nature of the language provides many “opportunities” for developers to produce memory leaks, and a single function blocking the event queue can have a huge impact on the overall application performance. Parallel execution of jobs is done using multiple worker processes using the “cluster” functionality to take full advantage of multi-core CPUs – but the master and worker processes belong to a single application, which means that...
While testing is often ignored when it comes to DevOps - it could be the most important aspect of achieving true DevOps success. Without rethinking automated testing from the ground-up, the entire DevOps productivity gain cannot be realized.
Large tech companies build their own rapid test automation that runs in minutes across functional, performance, security and other tests.
In his session at DevOps Summit, Kevin Surace, CEO of Appvance, discussed how we learn from these real-world successes...






















