Microwork Microwork is a series of small tasks which together comprise a large unified project, and are completed by many people over the Internet.   Microwork is considered the smallest unit of work in a virtual assembly line.  It is most often used to describe tasks for which no efficient algorithm has been devised, and require human intelligence to complete reliably. The term was developed in 2008 by Leila Chirayath Janah of Samasource.   Microtasking Microtasking is the process of splitting a job into its component microwork and distributing this work over the Internet. Good candidates for microtasks have the following characteristics: they are large volume tasks, they can be broken down into tasks that are done independently, and they require human judgement. Microtasks are distinguished from macrotasks which typically can be done independently, they require a fixed amount of time and they require a specialized skill. Services Uses Advantages
Learning LESS: An Introduction Today, I’m proud to start a series of posts that will focus on LESS, the dynamic language that takes your CSS and puts it on steroids. LESS let’s you use variables, mixins, nested rules, and even functions within your CSS. It’s extremely powerful and can dramatically speed up your development. There is a little bit of a learning curve to it, but once you wrap your head around it, you won’t type CSS again without using LESS. Blog Series Roadmap So with that laid you, you’ve got a lot of great stuff to look forward to. What Is LESS and Why Should I Care? In my dealings on the web, I have found that there are three types of people when it comes to dealing with LESS (or any other CSS preprocessor). My goal after this blog series is to make you fit into that last category. According to Wikipedia, LESS is: What Resources Are Out There? There are plenty of places you can read up about LESS, but you might as well make your first stop the source, the home base of LESS.
JetBrains :: World's Leading Vendor of Professional Development Tools Implementing Dynamic Interfaces GetMetaObject() returns a new DynamicDictionaryMetaObject whenever it is called. Here’s where the first complexity enters the picture. GetMetaObject() is called every time any member of the DynamicDictionary is invoked. The DynamicMetaObject is responsible for building an Expression Tree that executes whatever code is necessary to handle the dynamic invocation. BindSetMember constructs an expression tree that will call DynamicDictionary.SetDictionaryEntry() to set a value in the dictionary. Metaprogramming quickly gets confusing, so let’s walk through this slowly. DateTime current = propertyBag2.Date = DateTime.Now; Without setting the return value correctly, that construct won’t work. Next, this method initializes a set of BindingRestrictions. The rest of the method constructs the method call expression that will invoke SetDictionaryEntry() with the property name, and the value used. propertyBag2.MagicNumber = GetMagicNumber();
DevCheatSheet Crowdsourcing Crowdsourcing is a sourcing model in which individuals or organizations obtain goods and services. These services include ideas and finances, from a large, relatively open and often rapidly-evolving group of internet users; it divides work between participants to achieve a cumulative result. The word crowdsourcing itself is a portmanteau of crowd and outsourcing, and was coined in 2005. As a mode of sourcing, crowdsourcing existed prior to the digital age (i.e. There are major differences between crowdsourcing and outsourcing. Some forms of crowdsourcing, such as in "idea competitions" or "innovation contests" provide ways for organizations to learn beyond the "base of minds" provided by their employees (e.g. Definitions The term "crowdsourcing" was coined in 2005 by Jeff Howe and Mark Robinson, editors at Wired, to describe how businesses were using the Internet to "outsource work to the crowd", which quickly led to the portmanteau "crowdsourcing." Examples
Balaio Tecnológico Asynchronous Programming for C# and Visual Basic You can avoid performance bottlenecks and enhance the overall responsiveness of your application by using asynchronous programming. However, traditional techniques for writing asynchronous applications can be complicated, making them difficult to write, debug, and maintain. Visual Studio 2012 introduces a simplified approach, async programming, that leverages asynchronous support in the .NET Framework 4.5 and the Windows Runtime. This topic contains the following sections. This topic provides an overview of when and how to use async programming and includes links to support topics that contain details and examples. Asynchrony is essential for activities that are potentially blocking, such as when your application accesses the web. The following table shows typical areas where asynchronous programming improves responsiveness. Asynchrony proves especially valuable for applications that access the UI thread because all UI-related activity usually shares one thread. Reference Other Resources