JavaScript for Line of Business Applications
596.1K views | +0 today
Follow
JavaScript for Line of Business Applications
Keeping track of current JavaScript Frameworks that help design your clientside Business Logic Layers.
Curated by Jan Hesse
Beam to my Inbox:
Your new post is loading...
Your new post is loading...

Popular Tags - Filter using the Funnel

Current selected tag: 'functional programming'. Clear
Scoop.it!

Making your JavaScript Pure

Making your JavaScript Pure | JavaScript for Line of Business Applications | Scoop.it

Apply the principles of purely functional languages to your JavaScript to gain more reliable, self-documenting codebases.

Once your website or application goes past a small number of lines, it will inevitably contain bugs of some sort. This isn’t specific to JavaScript but is shared by nearly all languages—it’s very tricky, if not impossible, to thoroughly rule out the chance of any bugs in your application. However, that doesn’t mean we can’t take precautions by coding in a way that lessens our vulnerability to bugs.

No comment yet.
Scoop.it!

catbee: High level framework based on Catberry, Baobab and Cerebral concepts

catbee: High level framework based on Catberry, Baobab and Cerebral concepts | JavaScript for Line of Business Applications | Scoop.it

Catbee is Catberry small brother (read as fork). Unlike the Catberry, Catbee use "Single State Tree" conception. All state mutations run in signals, and powered by AppState module.

With Boilerplate for ES6, YAML, CSSModules, PostCSS, Cached API Service, ESLint and Lab.

No comment yet.
Scoop.it!

Bacon.js for Breakfast: An intro to functional reactive programming

Bacon.js for Breakfast: An intro to functional reactive programming presented by Eric Ponto at Midwest JS 2015
No comment yet.
Scoop.it!

What if the user was a function?

Exploring MV*, user interfaces, unidirectional dataflow, reactive and functional programming

Marco Romero's curator insight, September 8, 2015 11:01 AM

I totally bought the idea. :D

Scoop.it!

Functional Programming in JavaScript

In this video series, I will teach you how to do functional programming in JavaScript. In this first one, I will tell you about one of the most important concepts in functional programming: Higher-order functions. I will talk about what higher order-functions are, and then move on to code, and show you how to use them. I will also tell you why you should learn functional programming in the first place.

No comment yet.
Scoop.it!

Cycle.js

Cycle.js | JavaScript for Line of Business Applications | Scoop.it
A fully reactive JavaScript framework for Human-Computer Interaction

The building blocks in Cycle are Observables from RxJS, which simplify code related to events, asynchrony, and errors. Structuring the application with RxJS also separates concerns, because Observables decouple data production from data consumption.

Most frameworks claim to provide Separation of Concerns, but often they prescribe rigid containers where to place your code: Models, Views, Controllers, Components, Routes, Services, Dispatcher, Stores, Actions, Templates, etc. Cycle has none of that. Instead, pure functions over Observables and immutable data structures (such as from mori orImmutable.js) allow you to slice your program wherever you wish.

No comment yet.
Scoop.it!

An Introduction to Functional JavaScript

An Introduction to Functional JavaScript | JavaScript for Line of Business Applications | Scoop.it

M. David Green demonstrates how you can start thinking functionally in JavaScript, by refactoring some all-too-common imperative code to a functional style.

Functional JavaScript doesn’t have to take over an entire project in order to add value. Learning a little about the functional approach can help guide some of the decisions you make as you build your projects, regardless of the way you prefer to structure your code. Learning some functional patterns and techniques can put you well on your way to writing cleaner and more elegant JavaScript regardless of your preferred approach.

No comment yet.
Scoop.it!

Announcing Arch - a functional style application framework for React

Announcing Arch - a functional style application framework for React | JavaScript for Line of Business Applications | Scoop.it

Arch is a front-end functional style application framework using React as a UI layer. Arch applications are isomorphic out of the box, including form processing. This means you write your application as if it was client-side only and Arch will manage the server-side portion.

This also means you don’t get any control over the code running server-side, which is a design decision. The theory behind it is that any server-side code you need to run should sit in a separate server application which you talk to over an API.

Jan Hesse's insight:

http://archjs.org

No comment yet.
Scoop.it!

The Symmetry of JavaScript Functions (revised)

The Symmetry of JavaScript Functions (revised) | JavaScript for Line of Business Applications | Scoop.it

In JavaScript, functions are first-class entities: You can store them in data structures, pass them to other functions, and return them from functions. An amazing number of very strong programming techniques arise as a consequence of functions-as-first-class-entities. One of the strongest is also one of the simplest: You can write functions that compose and transform other functions.

No comment yet.
Scoop.it!

Tail Calls, Default Arguments, and Excessive Recycling in ES-6

Tail Calls, Default Arguments, and Excessive Recycling in ES-6 | JavaScript for Line of Business Applications | Scoop.it

The mapWith and foldWith functions we wrote in Destructuring and Recursion in ES6 are useful for illustrating the basic principles behind using recursion to work with self-similar data structures, but they are not “production-ready” implementations. One of the reasons they are not production-ready is that they consume memory proportional to the size of the array being folded.

No comment yet.
Scoop.it!

Writing a React JS front-end in Haskell

Writing a React JS front-end in Haskell | JavaScript for Line of Business Applications | Scoop.it

Joel Burget, Developer at Khan Academy explains the design of his new react-haskell library.

It allows you to write a front-end app in Haskell which you compile to JavaScript via Haste and render using React JS.

Jan Hesse's insight:

http://begriffs.com/posts/2015-01-12-reactjs-in-haskell.html

No comment yet.
Scoop.it!

Smalltalk MVC Translated to JavaScript

Smalltalk MVC Translated to JavaScript | JavaScript for Line of Business Applications | Scoop.it

The original Smalltalk MVC is an elegant way to structure an application. Unfortunately, the JavaScript community takes more inspiration from Dr. Frankenstein than from Smalltalk. The community appears to have done its best to saw off many good parts from MVC and bolt on unnecessary ugly bits to create framework monsters unsuitable for building real-world JavaScript applications.

I hope this article will remove the necessary historical digging to read and understand the implementation of Smalltalk MVC. Also, I hope it inspires better JavaScript frameworks and applications.

No comment yet.
Scoop.it!

How to Speed Up Lo-Dash ×100? Introducing Lazy Evaluation.

How to Speed Up Lo-Dash ×100? Introducing Lazy Evaluation. | JavaScript for Line of Business Applications | Scoop.it

I always thought libraries like Lo-Dash can’t really get any faster than they already are. Lo‑Dash almost perfectly mixes various techniques to squeeze out the most from JavaScript. It uses JavaScript fastest statements, adaptive algorithms, it even measures performance to avoid accidental regressions in subsequent releases.

No comment yet.
Scoop.it!

Practical Intro to Monads in JavaScript

Practical Intro to Monads in JavaScript | JavaScript for Line of Business Applications | Scoop.it

In category theory, the concept of catamorphism (from Greek: κατά = downwards or according to; μορφή = form or shape) denotes the unique homomorphism from an initial algebra into some other algebra.

No comment yet.
Scoop.it!

wu.js — Higher order functions for ECMAScript 6 iterators

wu.js — Higher order functions for ECMAScript 6 iterators | JavaScript for Line of Business Applications | Scoop.it

wu.js provides the higher order functions you've come to love from working with arrays (such as map and filter) as well as ones that may be new to JavaScript developers (such as takeWhile). 

No comment yet.
Scoop.it!

Plug and Play All Your Observable Streams With Cycle.js

Plug and Play All Your Observable Streams With Cycle.js | JavaScript for Line of Business Applications | Scoop.it

Cycle.js is an extension of the RxJS library more than a framework (though it will probably fall into that category). RxJS is the JavaScript version ofReactiveX, an API for asynchronous programming with observable streams. While RxJS solves the part of composing asynchronous and event-based programs by using observable sequences, Cycle.js does a unique thing by looping data flow between your application and the outside world. We will go into the details how this works later, but this makes explicit data-flow graphs possible; i.e., reasoning of dependencies between operations. Neither Angular nor React (nor any other that I am aware of) does this. This unique feature of Cycle.js has the benefit of making it far more easy to read and understand large code bases.Cycle.js is an extension of the RxJS library more than a framework (though it will probably fall into that category). RxJS is the JavaScript version ofReactiveX, an API for asynchronous programming with observable streams. While RxJS solves the part of composing asynchronous and event-based programs by using observable sequences, Cycle.js does a unique thing by looping data flow between your application and the outside world. We will go into the details how this works later, but this makes explicit data-flow graphs possible; i.e., reasoning of dependencies between operations. Neither Angular nor React (nor any other that I am aware of) does this. This unique feature of Cycle.js has the benefit of making it far more easy to read and understand large code bases.

Hieu Vu's curator insight, November 8, 2015 6:14 PM

Has anyone used Cycle.js? would be interested to see what this has been used in.

Scoop.it!

How to make an idiomatic Javascript library with Scala.js

How to make an idiomatic Javascript library with Scala.js | JavaScript for Line of Business Applications | Scoop.it

Scala.js opens a big world of frontend development to Scala fans. Most of the time Scala.js project ends up being an independent browser or Node.js application. But there are cases, where you would want to make a library for general frontend developers.

There’re some interesting gotchas in writing Scala.js library such way, that it will be natural to use for an average JS developer. In this article we will develop a simple Scala.js library (code) to work with Github API and will focus on the idiomaticity of it’s JS API.

No comment yet.
Scoop.it!

Fun with Functional JavaScript

It might be a surprise for some of you, but JavaScript can be regarded as a functional programming language. Why don't we use more functional programming concepts in our JavaScript code, then? In this talk you will learn how to start including some of them in your applications and when they might be particularly beneficial. You will also get familiar with libraries that extend the functional capabilities of JavaScript (lodash and FunctionalJS) and the upcoming ES6 features that make JavaScript even more functional.

No comment yet.
Scoop.it!

mostly-adequate-guide - Mostly adequate guide to FP (in javascript)

mostly-adequate-guide - Mostly adequate guide to FP (in javascript) | JavaScript for Line of Business Applications | Scoop.it

This is a book on the functional paradigm in general. We'll use the world's most popular functional programming language: JavaScript. Some may feel this is a poor choice as it's against the grain of the current culture which, at the moment, feels predominately imperative. However, I believe it is the best way to learn FP for several reasons:

  • You likely use it every day at work.

  • We don't have to learn everything up front to start writing programs.

  • The language is fully capable of writing top notch functional code.

That said, typed functional languages will, without a doubt, be the best place to code in the style presented by this book. JavaScript will be our means of learning a paradigm, where you apply it is up to you. Luckily, the interfaces are mathematical and, as such, ubiquitous. You'll find yourself at home with swiftz, scalaz, haskell, purescript, and other mathematically inclined environments.

No comment yet.
Scoop.it!

Isomorphic apps = normal React+FRP apps

Isomorphic apps = normal React+FRP apps | JavaScript for Line of Business Applications | Scoop.it

Isomorphic apps are almost like “normal” apps when creating them with the FRP. Because the FRP encourages you to always pass the entire state object to the rendering function, nothing prevents you to do the same in the backend as well.

If you have read other tutorials you may already know that React has a “backend-compatible” function called renderToString. It behaves exactly like render but doesn’t call componentDidMount and returns the rendered HTML as a string instead of placing it into a DOM node. Component & model in → HTML out. Couldn’t be simpler?

Well… actually, it could be. There are two gotchas you should know before trying to use renderToString:

  1. Your backend must understand JSX syntax
  2. Your front-end modules must be CommonJS compatible
No comment yet.
Scoop.it!

Functional UI and Components as Higher Order Functions

Functional UI and Components as Higher Order Functions | JavaScript for Line of Business Applications | Scoop.it

Making web applications got harder as the systems got more and more complex, and a lot of this has to do with state. We should be able to reason about a application in a simpler way, and building complex systems by combining small pieces of components which is more focused and doesn't require us to know what is happening in other parts for the system - as with HTML.

No comment yet.
Scoop.it!

Boost the Performance of an AngularJS Application Using Immutable Data

Boost the Performance of an AngularJS Application Using Immutable Data | JavaScript for Line of Business Applications | Scoop.it

A react component gets rendered the same way when it receives the same input parameters and it has the same state (if you implement it properly). React even provides the PureRenderMixin, which can make the “pure component” rendering even faster!

React is awesome, there are no two opinions. I’m also huge AngularJS fan. A few years ago I wrote the first AngularJS Style Guide“AngularJS in Patterns”AngularAOP and a few other AngularJS modules/components/examples, which got popular. So I started wondering whether I can use the same idea of immutability of the model in AngularJS, at least for accelerating the data-binding watchers.

No comment yet.
Scoop.it!

Better Support for Functional Programming in Angular 2

Better Support for Functional Programming in Angular 2 | JavaScript for Line of Business Applications | Scoop.it

In this blog post I will talk about the changes coming in Angular 2 that will improve its support for functional programming.


Using a mutable domain model goes against our goal. Say we have a mutable domain model that backs up my component. And the component updates the model. Some other component, somewhere else, that happened to point it, will be updated.

Instead we should model our domain using dumb data structures, such as record-like objects and arrays, and transform them using map, filter, and reduce.

No comment yet.
Scoop.it!

Tidying Up a JavaScript Application with Higher-Order Functions

Tidying Up a JavaScript Application with Higher-Order Functions | JavaScript for Line of Business Applications | Scoop.it

In this post, I’ll demonstrate the usage of higher-order functions outside of a collection-processing context – with the ultimate goal of reducing boilerplate code in your real-world applications (as filter did above). We’ll start with partial function application (facilitated by Underscore’s _.partial) and move on to writing our own higher-order functions.

Jan Hesse's insight:

http://blog.carbonfive.com/2015/01/14/gettin-freaky-functional-wcurried-javascript/


No comment yet.
Scoop.it!

The Two Pillars of JavaScript — Pt 2: Functional Programming

The Two Pillars of JavaScript — Pt 2: Functional Programming | JavaScript for Line of Business Applications | Scoop.it

How to Stop Micromanaging Everything


Over the course of the next few years, the way we code is going to change in radical ways, pushing us in a fundamentally different direction than the one we’ve been sprinting for the past 30 years or so. These changes will lead to many important breakthroughs in programming techniques, processes, application scalability, and quality controls.

No comment yet.