Skip to content

Instantly share code, notes, and snippets.

@abdullin
abdullin / 2012-12-10-btw-outline.md
Created December 10, 2012 04:54
Being The Worst

Topic Context

  • Module 1
    • The worst welcome E001
    • Messaging basics E002
    • Commanding your words E003
    • Event sourcing basics E004
    • Aggregating stories E005
    • Community Code and questions 1 E006
    • Re-Factory E007
  • Frameworks over forms is a design obsession E008
@abdullin
abdullin / reactNative.markdown
Last active October 20, 2015 17:57
Summary of React Native

React Native

Set of components to allow describing native widgets as React components and rendering them natively. It allows to wrap native APIs (imperative mutative) with declarative immutable APIs of React.

React Native replaces the DOM renderers with native renderers which allows people to render platform <View>/<ScrollView>/<NativeWhatever> instead of <div>/<span>. Other than that, you get to use the exact same React API that you already know (even down to the event bubbling). You can bridge to things that are only available on the platform, and can in general make higher performance granular building blocks that cannot be accomplished with web technology (such as components that decode images more efficiently or with different concurrency models). As with everything, JSX is not required to take advantage of this - and you can use any of the compile-to-js languages that you use with React today.

It includes:

@abdullin
abdullin / FetchEventStoreProcessor.cs
Created March 4, 2013 06:44
Samples of commands in test client used for event store manipulation (fetching it to local storage and searching). They mostly leverage Lokad.CQRS framework and test client interactive shell (see, for example, beingtheworst.com source: https://github.com/beingtheworst/btw-gtd)
public class FetchEventStoreProcessor : ICommandProcessor
{
public string Key { get { return "FETCH"; } }
public string Usage { get { return "FETCH <remoteConfig> [<folderNameInLokadData>]"; } }
public bool Execute(CommandProcessorContext context, CancellationToken token, string[] args)
{
if (args == null || args.Length == 0)
{
context.Log.Error("No remoteConfig provided.");
@abdullin
abdullin / MultiProjections.cs
Created March 12, 2013 17:25
Trying to figure out projection semantics
void Main()
{
dynamic processor = null;
bool stopRequested;
while(!stopRequested)
{
@abdullin
abdullin / NonSerializingMemoryStore.cs
Last active December 15, 2015 19:08
Example of memory key-value storage (to be used together with ProjectionRebuilder of Lokad.CQRS) that allows really fast rebuilds by skipping serialization step.
public sealed class NonSerializingMemoryDocumentStore : IDocumentStore
{
readonly ConcurrentDictionary<string,IStoreInfo> _store = new ConcurrentDictionary<string, IStoreInfo>();
readonly IDocumentStrategy _strategy;
public interface IStoreInfo
{
IEnumerable<DocumentRecord> Enumerate();
}
Development position in Moscow. Contact @abdullin.
Requirements:
* Higher engineering education;
* English language proficiency (reading technical documents, correspondence, speaking);
* Excellent knowledge of PHP/MySQL/Javascript (JQuery);
* Good knowledge of HTML/CSS;
* Basic knowledge of the Linux operation and administering;
@abdullin
abdullin / AzureLogSink.cs
Created October 16, 2013 06:30
Simple azure log that persists sliding log buffer in Azure blobs.
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Threading;
using Microsoft.WindowsAzure;
using Microsoft.WindowsAzure.StorageClient;
namespace Lokad
{
// Simple azure log that persists sliding log buffer in Azure blobs.
@abdullin
abdullin / StartupProjectionHost.cs
Last active December 30, 2015 21:09
Projection replayer for Lokad.CQRS projects (legacy)
#region Copyright (c) 2006-2013 LOKAD SAS. All rights reserved
// This document is shared under BSD license
#endregion
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
@abdullin
abdullin / main.go
Created December 16, 2013 08:51
Sample web server written in Go with Tom Janssens. Nobody had any real experience in go :)
package main
import (
"fmt"
"net/http"
)
var queue chan string
var joblist []string
@abdullin
abdullin / FizzBuzz.hs
Created December 23, 2013 10:03
In search of perfection
m n p v|mod v n==0=p|True=[]
p n|null w=show n|True=w where w=(m 3"Fizz"n)++(m 5"Buzz"n)
f=map p[1..100]