Skip to content

Instantly share code, notes, and snippets.

Avatar

Rinat Abdullin abdullin

View GitHub Profile
@abdullin
abdullin / gist:3724348
Created Sep 14, 2012
Advanced A+ES with domain services
View gist:3724348
// This is slightly advanced usage scenario of Lokad A+ES tests, that shows
// setting up test implementations of domain services in ES+friendly way
// (really simple) that also prints out in the specifications. Price is an
// instance of IPricingService, used by Application service, while Clock
// is a static singleton actually.
[Test]
public void with_multiple_entries_and_previous_balance()
View 2012-12-10-btw-outline.md

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 Oct 20, 2015
Summary of React Native
View reactNative.markdown

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 Mar 4, 2013
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)
View FetchEventStoreProcessor.cs
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 Mar 12, 2013
Trying to figure out projection semantics
View MultiProjections.cs
void Main()
{
dynamic processor = null;
bool stopRequested;
while(!stopRequested)
{
@abdullin
abdullin / NonSerializingMemoryStore.cs
Last active Dec 15, 2015
Example of memory key-value storage (to be used together with ProjectionRebuilder of Lokad.CQRS) that allows really fast rebuilds by skipping serialization step.
View NonSerializingMemoryStore.cs
public sealed class NonSerializingMemoryDocumentStore : IDocumentStore
{
readonly ConcurrentDictionary<string,IStoreInfo> _store = new ConcurrentDictionary<string, IStoreInfo>();
readonly IDocumentStrategy _strategy;
public interface IStoreInfo
{
IEnumerable<DocumentRecord> Enumerate();
}
View Dev position in Moscow
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 Oct 16, 2013
Simple azure log that persists sliding log buffer in Azure blobs.
View AzureLogSink.cs
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 Dec 30, 2015
Projection replayer for Lokad.CQRS projects (legacy)
View StartupProjectionHost.cs
#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 Dec 16, 2013
Sample web server written in Go with Tom Janssens. Nobody had any real experience in go :)
View main.go
package main
import (
"fmt"
"net/http"
)
var queue chan string
var joblist []string