Angel \”Java\” Lopez on Blog

August 20, 2014

Node.Js: Links, News And Resources (28)

Filed under: JavaScript, Links, NodeJs — ajlopez @ 5:10 pm

Previous Post

A Node.js speed dilemma: AJAX or Socket.IO? | Web Builder Zone

Nodejs-code |

niftylettuce/node-google-drive · GitHub
Node.js library to access Google Drive’s API

Making an ‘Authorized Request’ to a Google API using node.js (with everyauth authentication) – Stack Overflow

smurthas/gdata-js · GitHub
Simple Google Data API client for OAuth 2.0

bioinformatics – node.js modules

YOKOFAKUN: Server-side javascript: translating a DNA with Node.js

rogerwang/node-webkit · GitHub
node-webkit is an app runtime based on Chromium and node.js. You can write native apps in HTML and Javascript with node-webkit

Chris Sainty: Creating desktop apps with NodeJS

dominictarr/hipster · GitHub
Text editor in node.js

Serializing/storing closures – nodejs | Google Groups

meelash/Mundlejs · GitHub
Client-side module bundler, cacher, loader

medikoo/find-requires · GitHub
Find all require() calls. Fast and solid implementation backed with direct scanner and esprima ast parser

agrueneberg/Corser · GitHub
CORS middleware for Node.js

express.js middleware to support CORS pre-flight requests

jawerty/Node2Blog · GitHub
A simple and easy to setup node.js blog template. For the casual blogger.

Find files or directories by name

npm package to deploy node.js apps

http – Extracting POST data with Express – Stack Overflow

My Links

Stay tuned!

Angel “Java” Lopez

August 19, 2014

Smalltalk: Links, News And Resources (19)

Filed under: Links, Programming Languages, Smalltalk — ajlopez @ 3:33 pm

Previous Post

ESUG: 2014

Pharo Open Source Smalltalk — News


Philippe Back Interviews Nicolas Petton on Amber Smalltalk by philippeback on SoundCloud – Hear the world’s sounds


smallworks: Why I’m using git in my Pharo projects

Dyla’14 at PLDI, Edinburgh, UK


Self Mallard (4.5.0) released | Self

Self | Fun through simplicity

stic13 – YouTube

(349) Programming Languages: Why create any more programming languages? – Quora

Anyone interested in smalltalk? : learnprogramming

ST 4U 510: Dynamic Code Generation in Pharo

Was Alan Kay wrong? And why does that matter?

Smalltalk on Raspberry Pi | a blog on Smalltalk on the Raspberry Pi

My Links

Stay tuned!

Angel “Java” Lopez

August 14, 2014

Node.Js: Links, News And Resources (27)

Filed under: JavaScript, Links, NodeJs — ajlopez @ 3:10 pm

Previous Post 
Next Post

Links from my collection. Recent links at

creationix/uvrun · GitHub


javascript events – Filtering Stream object in node.js – Stack Overflow

node.js – custom stream object? (nodejs) – Stack Overflow

How to Use Buffers in Node.js –

How I move files on node.js – Stack Overflow

node.js – What is the difference between util.pump(streamA, streamB) and streamA.pipe(streamB)? – Stack Overflow

json rpc – What’s the best way to make one node.js server “talk” to another? – Stack Overflow



Joey Nelson: Node.js for noobs: Grabbing POST content

node.js Extracting POST data – Stack Overflow

Accessing the HTTP message body (e.g. POST data) in node.js | Frank Grimm – realtime-web framework for nodejs

How to exit in Node.JS – Stack Overflow

eldargab/make-flow · GitHub

circuit/ at master · tatumizer/circuit · GitHub

jrcryer/phpunit-watchr · GitHub

node_modules in git

My Links

Stay tuned!

Angel “Java” Lopez

August 10, 2014

New Month’s Resolutions: August 2014

Filed under: .NET, C Sharp, JavaScript, Open Source Projects — ajlopez @ 5:59 pm

Time to write new resolutions, and to review July 2014 ones:

- Improve AjGenesisNode code generation for Express [complete] see repo
- Improve AjGenesisNode code generation for Sinatra [partial] see repo
- First AjGenesisNode code generation for Laravel [pending]
- Module loading, export review in Mass Language [pending]
- Continue with SharpBus [complete] see repo
- Continue with Dynamic Site [pending]
- Give a talk about Node.js/Express [complete]
- Improve my personal site code [complete] see repo
- Write TDD Post [pending]
- Write C# Posts [complete] see posts
- Distributed use using Aktores [pending]
- Review, refactor and continue RustScript implementation [complete] see repo

Additionally, I worked on:

- Started SimpleList [complete] see repo
- Started SimpleJQuery [complete] see repo
- Improve SimpleMule [complete] see repo
- Started SharpGD, Graph Database in C# [complete] see repo
- Improve SimpleBus [complete] see repo
- Improve SharpGo [complete] see repo
- Improve ExpressSamples [complete] see repo
- Minor improvements in ScaScript [complete] see repo
- Improve ScalaSharp [complete] see repo
- Write Friends sample for JavaScriptSamples [complete] see repo
- Write Angular examples [complete] see repo
- Add remove method to OStore [complete] see repo
- Collaborate with Liqueed project [complete] see repo

New resolutons for August 2014:

- Write jQuery mock to be used in console tests/Node.js
- Write simple functions in JavaScript for array manipulation
- Continue with Liqueed project
- Start with Distributed Aktores
- Startwith Distributed AjErl

Also, I worked for thread count is 3.

Keep tuned!

Angel “Java” Lopez

July 31, 2014

Node.Js: Links, News And Resources (26)

Filed under: JavaScript, Links, NodeJs — ajlopez @ 6:51 pm

Previous Post 
Next Post

Links from my collection. Recent links at

Managing Node.js Dependencies with Shrinkwrap

Yammer Engineering – Managing Node.js Dependencies and Deployments at Yammer

reid/node-jslint · GitHub
The JavaScript Code Quality Tool — for Node.js

Getting Started with Node.js on Heroku | Heroku Dev Center

felixge/node-mysql · GitHub
A pure node.js JavaScript Client implementing the MySql protocol

How to “Ping” from a Node.js app? – Stack Overflow

javascript – In Node.js, how do I “include” functions from my other files? – Stack Overflow

Script.runInNewContext and global objects – nodejs | Google Groups

Simple Chat – Node.js + WebSockets | Switch on the Code

Introduction to Node.js – Online Training Course for .NET Developers

chriso/ · GitHub
A data scraping and processing framework

Experimenting with Node.js – Jeff Kreeftmeijer


Official NodeJS Binaries on Heroku – Arunoda Susiripala – Web Geek

You work for me, Computer: The Node.js REPL is Broken

1602/compound · GitHub
MVC framework. Built on Node.JS. Works on server and browser

A New Streaming API for Node v0.10

coopernurse/node-pool · GitHub

Object Modeling in Node.js with Mongoose | Heroku Dev Center

Raynos/levelidb · GitHub

shtylman/balabolka · GitHub
Dead simple hosted chat for your website

NetEase/chatofpomelo · GitHub
Chat application of pomelo

My Links

Stay tuned!

Angel “Java” Lopez

July 30, 2014

Node.Js: Links, News And Resources (25)

Filed under: JavaScript, Links, NodeJs — ajlopez @ 10:52 am

Previous Post
Next Post

Links from my collection. Recent links at

qooxdoo » Home
A universal JavaScript framework

Developing a complete client-server application with qooxdoo on Cloud9IDE. Part 1: Application architecture « Panyasan’s Random Musings

Create JSON APIs

Why we need a NodeJS application server or: writing boilerplate code considered harmful « Panyasan’s Random Musings

On “Reserving” Package Names – nodejs | Google Groups

Felix’s Node.js Guide

Felix’s Node.js Style Guide

substack/stream-handbook · GitHub
How to write node programs with streams

Chris Granger – Anatomy of a knockout

NetEase/lordofpomelo · GitHub
A browser-based MMORPG

instructure/canvas-lms · GitHub
Learning management systems

mem-memov/blackboard · GitHub
Online blackboard


javascript – How to decide when to use NodeJS? – Stack Overflow

Introducing – scaling node.js applications one callback at a time.


Express.js by Dan Zajdband – Comunidad Nodejs Argentina – YouTube

Roll your own PubSub with DNode :: The Universe of Discord

Tracking Down Memory Leaks in Node.js – A Node.JS Holiday Season ✩ Mozilla Hacks – the Web developer blog

<The client side of the moon />: Chat Evolution — Node.js and Socket.IO

My Links

Stay tuned!

Angel “Java” Lopez

July 29, 2014

SharpStorm Implementing Storm in C# (1) Initial Project

Filed under: .NET, C Sharp, Open Source Projects, SharpStorm, Storm — ajlopez @ 12:44 pm

In the last two years I was exploring the ideas of Storm (see, implementing a local topology Node.js. It’s time to practice more C # and TDD (Test-Driven Development), with:

Current status of the project:

The idea is to implement Bolt, Spout and a TopologyBilder. See

There are just three abstractions in Storm: spouts, bolts, and topologies. A spout is a source of streams in a computation. Typically a spout reads from a queueing broker such as Kestrel, RabbitMQ, or Kafka, but a spout can also generate its own stream or read from somewhere like the Twitter streaming API. Spout implementations already exist for most queueing systems.

A bolt processes any number of input streams and produces any number of new output streams. Most of the logic of a computation goes into bolts, such as functions, filters, streaming joins, streaming aggregations, talking to databases, and so on.

A topology is a network of spouts and bolts, with each edge in the network representing a bolt subscribing to the output stream of some other spout or bolt. A topology is an arbitrarily complex multi-stage stream computation. Topologies run indefinitely when deployed.

In the project are now defined interfaces, to have bolts and spouts, and topology builder to build a topology. For now, I want a local implementation (without distributed processing). Then, I hope to implement ACK algorithm that has original Storm, which lets you know when an incoming message was completely processed (including processes messages that occurred in the middle of the process).

Upcoming topics: discuss ISpout, iBOLT, and topology implementation.

Stay tuned

Angel “Java” Lopez

July 28, 2014

SharpDoop Implementing Map Reduce in C# (1) The Project

Filed under: .NET, C Sharp, MapReduce, Open Source Projects, SharpDoop — ajlopez @ 4:51 pm

I was experimenting with map-reduce in Node.js / JavaScript. But it is also something interesting to implement the algorithm in C #, to practice TDD (Test-Driven Development) and to learn more about what it takes to implement the algorithm. The project that I started is:

The current status:

It has a class library project and the test project. I came to think of something not yet distributed. All I want for now is to specify the map/reduce algorithm map, and run it in the same process.

See that there is then a MapReduceJob. The base class that is responsible for running a map (lambda function) and reduce (takes a key,  a list of values for that key, and output the result). With C #, these two operations can be expressed as lambdas or delegate methods inside a more complex object. For now, I pose the simple cases in the tests, and all them are running.

I also put together a MapProcessJob, which is a variant of map / reduce to discuss. Instead of processing all keys first, then roll them into the reduce phase, try to do everything together. In some use cases it may be more efficient, but is an issue to discuss in more detail.

Upcoming topics: more in-depth review and implementation ideas, such as map / process.

Stay tuned!

Angel “Java” Lopez

July 27, 2014

AjTalk Implementing Smalltalk In C# (4) The Project

Filed under: .NET, AjTalk, C Sharp, Programming Languages, Smalltalk — ajlopez @ 5:48 pm

Previous Post

Year and a half since I didn’t write about this project in C #, but I was working on it, and the parallel implementation I have in JavaScript (in fact, I introduced some concepts of both the Smalltalks 2013 conference, Rosario, Argentina).

The project is at:

Current structure:

The projects are:

AjTalk: class library, with a compiler to bytecodes implementation. There is a compiler to JavaScript too. There is an interpreter of those bytecodes.

AjTalk.Compiler: a console project that uses the compiler to JavaScript.

AjTalk.Console: a simple REPL (Read Eval Print Loop)

AjTalk.Gui: a work-in-progress example using windows

AjTalk.Tests: the test I wrote, followin TDD (Test-Driven Development) flow.

I guess now I don’t need the compiler to JavaScript, because I have a native JavaScript implementation at:

It can compile to bytecodes or to JavaScript. The project is written in JavaScript.

The window implementation is very primitive. I plan to replace it for direct AjTalk program using .NET types and object.

One point that I find very interesting (in both projects, C # and JavaScript) is to have a modular implementation: instead of loading an image yet defined, my plan is to define modules to load, as happens in the Node.js environment . The modules would be published in the NPM (Node Package Manager’s), and each could indicate which modules need in your program instead of lifting all Smalltalk.

Another topic in this C # project I have implemented that can run more than one AjTalk machine at the same time. And I can even make a machine “help” to the other. For example, if the machine does not have to compile methods to new methods, machine B can go to his aid. Thus, A machine (and his image, I’m already recording binary image) can be kept small.

Another feature that I have implemented: the ability to send a message to an object, without waiting for a response, a “fire and forget”. And that the target object can attend ONE OF those messages as models of actors.

I have to review the implementation of remote objects (now based on the old Remoting. NET). But I think it is an important feature to maintain and explore.

Well, you see, many issues remain for other posts, such as implementation details Smalltalk concepts such as Object, Class, ClassDescription, Behavior, MetaClass, etc..

Nos leemos!

Angel “Java” Lopez

July 26, 2014

AjKeyvs Implementing Key-Value Store in C# (1) The Project

Filed under: .NET, AjKeyvs, C Sharp, No, NoSQL, Open Source Projects, Test-Driven Development — ajlopez @ 6:40 pm

I want to implement a key-value store (as Redis) in C#, play with data structures, and practice TDD (Test-Driven Development). I started:

The current structure:

There is a class library project, AjKeyvs, that contains the collections in an in-memory repository. The interesting part of this projects is to implement arrays and sets that can be sparse, having different keys. Example, having a key 1 (one) and a key 1000000 (one million) does not imply to have an array with one million positions. At the same, I want to have a good access and update time. In other use cases, I will have string keys, like “user”, “user:1”, “user:1:email”, etc. There are use cases that need the use of sets, with union, intersection, difference, etc… For integer keys, I jave a set where a could turn a bit on or off, for the presence or absense of an element. More implementation details in upcoming post.

The library can be used in-process, but I added a server and a client program. The server listen commands sent by the clientes. All collections reside in memory. Persistence is something orthogonal to the implemented use cases. I should decide if add the persistence into the command processing, or is something to be implemented outside the project.

As usual, I followed TDD workflow.

Next topics: data structures, collections, commands, concurrency, etc.

Stay tuned!

Angel “Java” Lopez

Older Posts »

The Shocking Blue Green Theme. Create a free website or blog at


Get every new post delivered to your Inbox.

Join 66 other followers