background preloader

Regexper

Regexper

Netflix Open Sources “Resilience Engineering” Code Library Hystrix: it’s the genus name for “Old World” porcupines, and it’s also the latest release from Netflix. But you won’t see it in their catalog of movie and TV titles, and you can’t add it to your queue, because it’s not content–it’s how Netflix makes sure its content is highly available. Now, Netflix has made Hystrix open source, for anyone using Amazon Web Services (AWS) to implement in their own cloud applications. Read on for details on this “resilience engineering” code library. Mention Netflix, and most people will think of the company’s DVD-rental-by-mail service or its growing library of “Watch Instantly” streaming video titles. This week, Netflix added Hystrix to its bag of open-source tricks. The Hystrix home page on GitHub defines the problem: [R]unning an application that depends on 30 services that each have 99.99% uptime we get: 99.9930 = 99.7% uptime 0.3% of 1 billion requests = 3,000,000 failures 2+ hours downtime/month even if all dependencies have excellent uptime.

Chosen - a JavaScript plugin for jQuery and Prototype - makes select boxes better Chosen is a jQuery plugin that makes long, unwieldy select boxes much more user-friendly. Downloads Project Source Contribute Standard Select Turns This Into This Multiple Select <optgroup> Support Single Select with Groups Multiple Select with Groups Selected and Disabled Support Chosen automatically highlights selected options and removes disabled options. Single Select Multiple Select Hide Search on Single Select The disable_search_threshold option can be specified to hide the search input on single selects if there are n or fewer options. Default Text Support Chosen automatically sets the default field text ("Choose a country...") by reading the select element's data-placeholder value. Note: on single selects, the first element is assumed to be selected by the browser. No Results Text Support Setting the "No results" search text is as easy as passing an option when you create Chosen: Limit Selected Options in Multiselect You can easily limit how many options the user can select: Right-to-Left Support

Circular Visualization • circlize Circular layout is an efficient way for the visualization of huge amounts of information. Here the circlize package provides an implementation of circular layout generation in R as well as an enhancement of available software. The flexibility of this package is based on the usage of low-level graphics functions such that self-defined high-level graphics can be easily implemented by users for specific purposes. Together with the seamless connection between the powerful computational and visual environment in R, circlize gives users more convenience and freedom to design figures for better understanding complex patterns behind multi-dimensional data. Citation Zuguang Gu, Lei Gu, Roland Eils, Matthias Schlesner, Benedikt Brors, circlize Implements and enhances circular visualization in R. Install The package can be installed from CRAN: or directly from GitHub: Basic design Current there are following low-level graphic functions: Draw circular heatmaps circos.heatmap() circos.genomicTrack()

How to Debug One of the painful parts of teaching a lab-based embedded systems course is that over and over I have to watch a team with a relatively simple bug in their code, but who is trying to fix it by repeatedly making random changes. Generally they start with code that’s pretty close to working and break it worse and worse. By the end of the lab they’re frustrated, aren’t any closer to finding the bug, and have made a complete mess of their code, forcing them to go back to the previous day or week’s version. A typical Computer Science curriculum fails to teach debugging in any serious way. First we’ll want to define some terms: The high-level reason debugging is hard is that it’s an inverse problem: it attempts to infer the cause for observed effects. Of course, a very bad bug will involve several of these factors at the same time. The following steps constitute a fairly complete approach to debugging. 1. It makes no sense to even start debugging unless we’re pretty sure: 2. 3. 4. 5. 6. 7. 8.

Moment.js | Parse, validate, manipulate, and display dates in javascript. FSM Simulator ① Create automaton Enter a regular expression into the input field below or click Generate random regex to have the app generate a simple regex randomly for you. Next, click Create automaton to create a FSM for the defined regex and display its transition graph. A valid regex consists of alphanumeric characters representing the set of input symbols (e.g. a, B, 9), the $ character representing the empty string, the choice operator +, the Kleene operator *, and parentheses ( and ). An example of a valid regex is: (a+B)*(c9+$)+$. Enter a FSM into the input field below or click Generate random DFA/NFA/eNFA to have the app generate a simple FSM randomly for you. A valid FSM definition contains a list of states, symbols and transitions, the initial state and the accepting states. ② Simulate automaton Click Read next to have the FSM consume the next input symbol in the sequence and Read all to consume all remaining input symbols. The input field highlights the input symbol that will be read next.

IoC container solves a problem you might not have but it’s a nice problem to have | Krzysztof Koźmic on software On frame­works and libraries A log­ging frame­work helps you log what's hap­pen­ing in your appli­ca­tion. A UI frame­work helps you ren­der and ani­mate UIs to the user. All of these tasks and con­cepts are pretty easy to under­stand. Also the code of your appli­ca­tion changes in order to use those frame­works and libraries. What about IoC container? So what about inver­sion of con­trol con­tain­ers? I got one of the IoC con­tain­ers, put it in my appli­ca­tion, and then all hell broke loose. Let's ignore the details for now and con­cen­trate on the wider sentiment. So? The sen­ti­ment is one of con­fu­sion, scep­ti­cism and frus­tra­tion. Truth is, those aren't nec­es­sar­ily the right ques­tions to ask. I have seen appli­ca­tions where intro­duc­ing a con­tainer imme­di­ately, would only worsen things. What sort of archi­tec­ture are we talk­ing about? Con­tainer has cer­tain require­ments in order to work smoothly. That's a lot of assump­tions, isn't it? It's the inversion! The i-word

iio Engine · Home

Related: