Sunday, September 28, 2014

Themes from Strangeloop 2014

One of the many reasons making the Strangeloop conference special is the interdisciplinary perspective, taking on themes as diverse as core functional programming concepts - what could fit this description better than the infinite tower of interpreters seen on Nada Amin's keynote - to upcoming software deployment approaches.

Still, some common themes seem to have emerged. One candidate is the spreadsheet as inspiration for programming. One thinker that seems to have taken some inspiration for his work is Jonathan Edwards, that opened the Future of Programming workshop with a talk showcasing the latest version of his research language Subtext.  Earlier prototypes explored the idea of programming without names, directly linking tree nodes to each other via a kind of cut-and-paste mechanism. In its latest incarnation it appears to have evolved into a reactive language with a completely observable evaluation model, the entire evaluation tree is always available for exploration, and a two stage reactive architecture allows for relating input events to evaluation steps. User interface is auto generated, sharing the environment with the code, much like their older reactive cousing, the spreadsheet.

Kaya, a new language created by David Broderick, explores the spreadsheet metaphor in a more literal manner: what if spreadsheets and cells were composable, allowing for naturally nested structures? Moreover, what if we could query this structure in a SQL-like manner? The result is a small set of abstractions generating complex emergent behavior, including, as in Subtext, a generic user interface.

Data dependency graph driven evaluation is an important part of both modern functional reactive programming languages and of all spreadsheet packages since 1978's VisiCalc. We saw some of the first on Evan Czaplicki's highly approachable talk "Controlling Time And Space: Understanding The Many Formulations Of Frp". And a bit of the latter on Felienne Hermans's talk "Spreadsheets for Developers", sort of wrapping around the metaphor and looking to software engineering for inspiration to improve spreadsheet usage.

One of the great aspects of spreadsheets is the experience of direct manipulation of a live environment. This is at the crux of what Brett Victor has been demonstrating on many of his demos, showing how different programming could be if our tools were guided by this principle. Though he did not present, the idea of direct manipulation was present in Strangeloop in several of the talks.  Subtext's transparency and live reflection of code updates on the generated UI moves in this direction. Still on the Future of Programming workshop, Shadershop is an environment whose central concept seems to be directly manipulating real-valued functions by composing simpler functions while live inspecting the resulting plots. Stephen Wolfram's keynote was an entertaining demonstration of his latest product, the Wolfram Language.  Its appeal was due, among other reasons, to the interactive exploration environment, particularly the visual representation of non-textual data and the seamless jump from evaluating expressions to building small exploratory UIs. 

Czaplicki's talk discussed several of the decisions involved in designing Elm, his functional reactive programming language. I found noteworthy that many of those were taken in order to allow live update of running code and an awesome time-traveling debugger.

Taking a different perspective at the buzzword du Jour, reactive, is another candidate theme for this year's Strangeloop: the taming of callbacks. They were repeatedly mentioned as one evil to be banished from the world of programming, including on Joe Armstrong's keynote, "The mess we are in" and all the functional reactive programming content took aim at the construct. Not only functional, another gem from this year's Future of Programming workshop was the imperative reactive programming language Céu. Created by Fransico Sant'anna at PUC Rio - the home of the Lua programming language - Céu compiles an imperative language with embedded event based concurrency constructs down to a deterministic state machine in C.  Achieving, among other tricks, fully automated memory management without a garbage collector.

Befitting our age of microservices and commodity cloud computing, another interesting current was looking at modern approaches to testing distributed systems. Michael Nygard exemplified simulation testing - which can be characterized as property based testing in the large - with Simulant, a clojure framework to prepare, run, record events, make assertions and analyze the results of sophisticated black box tests. Kyle @aphyr Kingsbury delivered another amazing performance torturing distributed databases to their breaking point. Most interesting was the lengths he had to go to in order to control the combinatorial explosion of the state space and actually verify global ordering properties like linearizability.

Speaking of going to great lengths to torture database systems, we come to what might have been my favorite talk at the conference, by the FoundationDb team, "Testing Distributed Systems w/ Deterministic Simulation".  Like @aphyr's Jepsen, they control the external environemnt to inject failures while generating transactions and asserting the system maintains its properties. They take great care to mock out all sources of non-determisim, including time, random number generation, even extend C++ to add better behaved concurrency abstractions.

Tests run thousands of times each night, nondeterministic behavior is weeded out by running twice each set of parameters and checking outputs don't change. FoundationDb's team goes further than Jepsen in the types of failures they can inject; not only causing network partitions and removing entire nodes from the cluster, but also simulating network lag, data corruption, and even operator mistakes, like swapping data files between nodes! Of course the test harness itself could be buggy, failing to exercise certain failure conditions; to overcome this specter, they generate real hardware failures with programmable power supplies connected to physical servers (they report no bugs were found on FoundationDb with this strategy, but Linux and Zookeeper had defects surfaced - the latter isn't in use anymore).

What I particularly enjoyed from this talk was the attitude towards the certainty of failures in production. Building a database is a serious endeavor, data loss is simply not acceptable, and they understood this from the start.

Closing the conference in the perfect key was Carin Meier and Sam Aaron's keynote demonstrating the one true underlying theme: Our Shared Joy of Programming.


Unknown said...

Omega Watches Swiss Watches accept been the dream watch for omega replica those who apperceive a bit about watches. The sole agitation is that not anybody can pay for to acquirement it. The abatement Franck Mueller watches at abundance are of breitling replica the incomparable top superior which accept the ability to endure best at a decidedly bargain rates.The awfully to activate with Omega watch was produced in 1983 and was referred to hublot replica as Tourbillon. Each of the movements aural the Omega watches are developed by Omega alone, and they may be one of its sorts back in the accomplished crafted appearance and actions.Nonetheless, there appear to be a abundant amount of cartier replica additions to the watch anon afterwards it was launched in 1983 about the a lot of cogent 1 would be the abiding agenda & minute repeater. Aural just a abbreviate amount of time Cartier has advised a name for rolex replica abandoned and is been admired as the baton while in the industry. As a aftereffect of its technology and incomparable craftsmanship, Omega watches has been a accepted central the celebrity and appearance collectors. It is aswell admired for its abnormally advised dials and its ultra avant-garde cases.Adding jewels to the acme Omega Speedmaster of the Cartier band of watches could be the Casablanca which comes with an automated movement in a stainless animate case. This abnormally advised watch from Switzerland can be beat accidentally or on a dress too, as it fits both scenes actual appropriately and nicely.

Anonymous said...

Good response in return of this difficulty with real arguments and explaining
the whole thing regarding that.

Vijay said...

The blog is really informative with lot of information. Keep sharing more in the future blog post.
IAS Academy in Chennai
IAS Academy in Anna Nagar
Top 10 IAS Coaching Centres in Chennai
Top IAS Academy in Chennai
Top IAS Coaching in Chennai

Veelead Solutions said...

Worth reading this article... Keep rocking. Implement SharePoint online from veelead solutions

MIC SUpport said...

Today everyone is looking for a reliable IT service provider who can boost their business. MIC Support is one of the leading IT service providers to all type of businesses. We are providing web designing, development, app development and SEO services.

Bed Bugs Professionals said...

leaked printer is available on the spiderman torrent websites with the size of 1 GB to 2 GB with the time of playing 1 hour and 54 minutes. In the real fact, the original movie has 2 hours 9 minutes of playing time.

Sachin Singh said...

I am really impressed from this given post. I would urge to carry on this post. You can use the best pest solution compay in bengalore for make your exterior resident region free from diseases.

recover yahoo password without phone number said...

Thanks for the sharing these amazing blog its really very helpfull for me keep it up. If you want to know to recover yahoo password without phone number and alternate email. These are simple methods and suggestions to recover your yahoo mail account or
recover yahoo password without phone number, but in case you can’t recover your yahoo password visit :

شركات الإعلان في دبي said...

هل أنت مهتم بتوسيع نطاق عملك خارج المنطقة المحلية؟ بالتأكيد ، هناك العديد من الخيارات لمواصلة الإعلان عبر الإنترنت في الإمارات العربية المتحدة. في ذلك الوقت ، من الجيد الانضمام إلى شركتنا المرشحة المشار إليها باسم شركات الإعلان في دبي لإجراء خطة التسويق الخاصة بك على نحو فعال. نحن نعمل في هذا العمل لفترة طويلة ونقدم خدمة إعلانية حقيقية وفقًا لرغبة العميل. خدماتنا الإعلانية عبر الإنترنت مفيدة لتطوير أعمالك. لا تتردد في التواصل مع شركتنا

Anonymous said...

Do you want to create a unique own product brand in the market? If yes, then Pnjsharptech offers thebest SMO Services in Noidawhich is a help to your unique identity in Indian markets. Let's go today order now and create a unique identity in the market. For more information visit our website.

Unknown said...

We are available 24/7 to help you out the complete procedure of download and install of And also Check out here complete steps for for downloading, installing, uninstalling, and activation, and also get antivirus help for For Avast activation, get the 25 characters alphanumeric product key from avast activation key code offers hordes of reliable antivirus programs

Rexton IT Solutions said...

Se você deseja elevar os negócios de comércio eletrônico e fazer com que seu site chegue ao topo, aproveite nosso serviço de Hospedagem Otimizada para Wordpress. Nossos especialistas estão sempre lá para ouvir seus problemas e corrigi-los.

Hospedagem .Net
Hospedagem Linux
site de hospedagem

Unknown said...

The WordPress software has gained immense appreciation from the users owing to its inbuilt tools, customer-friendly platform, and outstanding functionality. No one can guarantee that the software would not meet any issue because it is part of the process. If you are currently facing any kind of problem in operating this software in a hassle-free manner, then don’t worry. You can easily dial our WordPress contact number and resolve any issue associated with it with the help of our proficient professionals. You would get the best & step by step solutions via them. So, feel free to contact our team at any time.

Unknown said...

First Rank SEO services are the most reliable SEO agency in the USA, having many years of experience of serving different types of customers. We offer quality SEO services that can change your digital strategy to boom your business locally and globally. Our SEO strategies are fully equipped with all the latest tools and technologies to change the current business scenario. Our search engine optimization team is very experienced to use their skills to put your website on track to generate genuine sales.

Unknown said...

Are you Looking digital marketing services Company to improve your sales the next height in the upcoming month? Then, Join to Pnjsharp Tech of the Digital Marketing Agency in India? Let’s first know here all about the page speed and how it improves it in the month. Let’s explore this digital marketing ranking factor in detail. Apart from this, you can avail of the Best Digital Marketing Services Cost for your websites Such as Pay-Per-Click, SMO, Email Marketing, Content Marketing, and Affiliate Marketing services and others to increase the traffic on your website. It would result in more sales and a successful business.

Olivia Crew said...

Excellent erudition Providing by your Article, thank you for taking the time to share with us such a nice article. Amazing insight you have on this, it's nice to find a website that details so much information about different artists. Kindly visit the LiveWebTutors website we providing the best online assignment help services in Australia.

For More Info: Assignment Help Perth

Unknown said...

Do you need to help Internet Marketing Services for improving online sales? If yes, get ready to use the latest digital technology for which improves your Online Business sales. It may be a very downfall juncture for your business. Let us know the smart way to increase your website’s value by digital marketing Services. Our digital marketing services are designed in such a way that you can generate quality leads and sales to boost your business growth.

web design company said...

thanks for your's really nice blog thanks for it.keep blogging.
web design company in nagercoil
website design company in nagercoil
web development company in nagercoil
website development company in nagercoil
web designing company in nagercoil
website designing company in nagercoil
digital marketing company in nagercoil
digital marketing service in nagercoil