This article delves into different system components, from the client and DNS, to the load balancer server, firewall, service instances, and other core elements.
This presentation from Hilary Mason at devs love bacon in April, titled "Everything You Need to know about Machine Learning in 30 Minutes or Less," is an introduction to machine learning for those who have no prior experience with it. Take a look if you're interested in a quick, fun overview to help you get started: Hilary Mason - Machine Learning for Hackers from BACON: things developers love on Vimeo. Then, if you want to get a bit deeper, check out this intro to machine learning in R, or to get a lot deeper, our Machine Learning Refcard.
So, you heard about IoT. You got your Apple Watch and your Intel Edison and you're putting Doom on everything and your refrigerator is sending all kinds of emails. All you have left to do is check all the entries on your IoT shopping list and get your home fully automated, bring your life into the future. Before you worry about the technological singularity, though, you may want to consider something more immediately threatening: your rapidly emptying bank account. According to Terence Eden's recent look at the price of Things, a truly automated home is a bigger economic undertaking than it might seem to be at first glance. First, he points to sensors for his windows: After a traipse through my family home, I discover that I have 20 separate external doors and windows. I don't live in a mansion - but all my windows are split into two different sections. So, if I want my windows to become part of "The Internet of Things" I'm going to be shelling out £600. That's quite a lot of money. And that's only for a passive system. And, as Eden points out, that's just to let you know whether the window is open or not. It doesn't lock or unlock your window. It doesn't close or open your window. That's £600 - $980.30 USD according to my extensive research - just to keep you from worrying about your carpet when it starts raining. But it gets worse from there. Eden also looks at more branded scenarios, such as decking out your IoT house with some better lighting: Suppose I want some smart lightbulbs? The highly desirable Philips Hue Personal Wireless Light Bulbs are FIFTY QUID EACH . . . If I were to deck my place out completely in Philips Hue bulbs, I wouldn't have much change left from £1,250. And those are just a few of the items that the home of the future would likely include. Eden briefly looks at iBeacons and NFC tags, for example, and his conclusion is the same: IoT is expensive. Certainly these prices will drop over time, and it's definitely not an all-or-nothing game when it comes to these devices, but either way, Eden presents an interesting look at a less-often-explored aspect of the Internet of Things. There are a lot of exciting things happening right now, but to what degree will we actually have access to them?
If you're interested in getting involved with IoT - maybe you're one of those Java developers who just got a fun set of tools - it looks like the next few years are going to be a good time to do it, because according to Business Insider's BI Intelligence report, the Internet of Things is growing. A lot. Specifically, the report is measuring the growth of internet-connected "everyday" and "enterprise" devices, which I assume refers to any internet-connected device that one would not traditionally expect to have an internet connection. In other words, your refrigerator, or your toaster, or your dog. According to Business Insider, there are approximately 1.9 billion of these devices today, and by 2018, there will be about 9 billion. Again, that's not including smartphones, wearables, traditional computers, and other things you expect to be internet connected - in fact, that 9 billion figure is greater than the predicted numbers of all those other devices put together. That's a lot of things, and it makes sense, given what we've already heard about all the IoT money and IoT jobs. Business Insider also points to a few potential sources of this influx of IoT devices: connected billboards, for example, and flexible electricity grids that compensate and adjust for various energy usage scenarios. In short, IoT is already here, and it's going to get a lot bigger. Soon, this will be your life: pic.twitter.com/0fmnhs7BvG — Omer Shapira (@omershapira) September 26, 2014 Or, you know, something along those lines. Check out Business Insider's full article - a preview for their BI Intelligence report, which requires a sign-up - for all the details.
Security in the Internet of Things is a fairly common concern these days - you know, Heartbleed, toasters, that kind of thing - but you may not even have considered the greatest threat to your connected devices: classic 1990s first person shooters. That's the scenario presented in this recent experiment from Context Information Security. By taking advantage of a web interface that require no user authentication, the Context team managed to get Doom up and running on a Canon Pixma printer. Obviously Doom is not the point in itself, so much as an illustration of the vulnerability, but it definitely gets the idea across. According to Michael Jordon at Context, the vulnerability was fairly serious: At first glance the functionality seems to be relatively benign, you could print out hundreds of test pages and use up all the ink and paper, so what? The issue is with the firmware update process. While you can trigger a firmware update you can also change the web proxy settings and the DNS server. If you can change these then you can redirect where the printer goes to check for a new firmware. So what protection does Canon use to prevent a malicious person from providing a malicious firmware? In a nutshell - nothing... Jordon's post goes into detail on how the encryption was broken. Canon was contacted and informed of the problem, and responded that it would be fixed, but Jordon warns that it's not a unique scenario. While this particular technique is not currently a common concern, it demonstrates the reality of security concerns when it comes to IoT devices. Once everything is connected, how many devices will be vulnerable? How confident can we be that the creators of these devices will be cognizant of these issues? As a potential catch-all solution, Context offers a strange bit of advice: Context recommends that you do not put your wireless printers on the Internet, or any other ‘Internet of Things’ device. So, there you go - one way to be sure. The Internet of Things can't help but be secure if you get rid of that whole "Internet" part.
if you've been looking forward to intel's edison development platform since it was announced, your time has come. at the idf 2014 keynote a few days ago, edison was released. intel has brought us iot. it's a slick little package. you can't read about it anywhere without hearing about how small it is - it's the size of a postage stamp, you see. it's small! (via anandtech ) if it's the specs you're looking for, intel can help . edison includes: ...a 22-nm intel® atom™ soc, formerly silvermont that includes a dual core, dual threaded cpu at 500 mhz and a 32-bit intel® quark™ processor mcu at 100 mhz... [and] 40 gpios and includes: 1 gb lpddr3, 4 gb emmc, and dual-band wifi and bluetooth® low energy... and it supports: ...development with arduino* and c/c++, followed by node.js, python, rtos, and visual programming support in the near future. it'll be retailing for $50. that's a pretty manageable hit to take in your iot budget - after all, it's just 1/7th the price of that shiny new apple watch .
Last week I wrote a brief introduction to Kristof Degrave's ongoing, multi-stage IndexedDB tutorial. Judging by the number of reads, it looks like quite a few of you are interested in learning more about HTML5's IndexedDB. I'm following Kristof's tutorial anyway, so I might as well keep posting about it here. Today Kristof has posted his next IndexedDB tutorial -- Transactions -- and here's where IndexedDB begins to get exciting, where the work of creation and definition begins to pay off. We're preparing for actual data retrieval and manipulation, so we'll be creating a READ_WRITE transaction. At this point, if you're trying to understand IndexedDB formally as well as use it pragmatically, you might want to get more comfortable with W3C's conceptual treatment of transactions along with the formal object description, and maybe the IDBTransaction interface too. (For me, it especially helps to understand emerging tech like HTML5 a little more abstractly, just in case the standard takes a different turn than previously expected.) If you prefer learning by doing, here's how Kristof explains transactions: Today, I’ll handle the transaction subject. As said in previous posts, every request made to the database needs to be done in a transaction. So for every read or write request we need to create a new transaction. There for we need a database connection and 2 argument that we will pass to the transaction method. The post is, like his previous tutorials, quite straightforward -- painlessly showing you how to use what is potentially one of the most powerful features of HTML5. Take a look, create an IndexedDB transaction, and get ready to retrieve and manipulate data.
Serious local database support is probably one of the coolest new features of Windows Phone 7.1(5). For the Windows Phone developer, it's not hard to create a local database, or add some columns, indexes or tables. But if you're using a SQL CE database then you are, after all, developing for a phone. And one of phones' most exciting powers isn't their hard drives -- it's their cameras. And it turns out that Mango makes storing camera photos -- or any image data for that matter -- pretty easy. To see how easy, look at this HowTo from Anton Swanevelder, posted a few days ago on his blog. Anton breaks SQL CE image-storage into three steps (the CRU in CRUD), and every step takes less than 20 lines. For example, you can create a column to store image data like this: [Column] public byte[] ItemImage { get { return _ItemImage; } set { if (_ItemImage != value) { _ItemImage = value; NotifyPropertyChanging("ItemImage"); NotifyPropertyChanged("ItemImage"); } } } The other two steps are more interesting (converting a camera stream to a storable byte array, then converting the byte array to a bitmap markup-able in XAML), but no more difficult. Read the full post for the full implementation.
According to Philip Rathle on The New Stack, graph databases can be used for more than just finding football stadiums. In fact, they can help with some pretty interesting problems: breaking up organized crime, for example. The example Rathle relies on for this article isn't the Sopranos-style organized crime you might be picturing, but rings of bank and credit card fraudsters. These are perpetrators of "first-party fraud," defined by Rathle as people who "...apply for credit cards, loans, overdrafts, and unsecured banking credit lines with no intention of paying any of them back." This type of fraud is a major problem for financial institutions, largely because of the way fraud rings mirror the strengths of graph databases: a small number of real addresses and fake phone numbers can be tied together in different combinations to create a vast web of dummy accounts attached to fake identities. This structure of fraud is hard to detect, Rathle says: ...traditional methods of fraud detection are either not geared to look for the right thing: in this case, the rings created by shared identifiers. Standard instruments—such as a deviation from normal purchasing patterns—use discrete data and not connections. Discrete methods are useful for catching fraudsters acting alone, but they fall short in their ability to detect rings. And particularly using relational databases: Uncovering rings with traditional relational database technologies requires . . . a set of tables and columns and then carrying out a series of complex joins and self-joins. Such queries are incredibly complex to build and expensive to run. Scaling them in a way that supports real-time access poses significant technical challenges, with performance becoming exponentially worse not only as the size of the ring increases but also as the total data set grows. This is where graph databases come in uniquely handy. Rathle points to languages such as Cypher as providing a semantic that lends itself to navigating these types of relationships, and it is fairly clear, as Rathle demonstrates with a visual, how graph relationships can pinpoint rings. Take a look at Rathle's full article for more details on how graph databases can be used to traverse complex relationships and detect fraud rings.
Learn about overfitting and generalization, and how they relate to the bias-variance tradeoff in machine learning. We’ll also cover techniques for finding the optimal balance between bias and variance in deep learning models.
In this interview, learn more about what kind of data Foursquare deals with, what it does with that data, and how using a knowledge graph is going to help.
This article explores NestJS, Mongo, and Typegoose and provides an example of how you can use MongoDB in your NestJS application in a headache-free way.