Skip to content

Instantly share code, notes, and snippets.

View janmarek's full-sized avatar

Jan Marek janmarek

  • Prague, Czech Republic
View GitHub Profile
@janmarek
janmarek / index.html
Created May 13, 2022 12:03
React playground
<div id="app"></div>
@janmarek
janmarek / index.html
Created May 13, 2022 12:03
React playground
<div id="app"></div>
@janmarek
janmarek / createLocalStorageReducer.js
Last active December 27, 2022 21:23
Save part of a Redux store to local storage
function mergeData(reducerDefaults, storedData) {
return {
...reducerDefaults,
...storedData,
};
}
function createLocalStorageReducer(
reducer,
key,
@janmarek
janmarek / algoritmizace.md
Last active November 5, 2015 18:53
c/c++ a algoritmizace

C/C++ není jediný "opravdový" jazyk. Já bych pro výuku algoritmizace vybral třeba Javu, C#.

Při programování C/C++ musím v praxi řešit spoustu problémů, které s algoritmizací (tak se ten předmět jmenuje) vůbec nesouvisí. Jak mi pomůže, že místo výjimky buď program bude dělat nesmysly, protože někde přepisuje kus paměti co nemá nebo spadne na segfaultu? Nebo že musím řešit rozdíl mezi referencí a ukazatelem? Ruční správa paměti? To jsou prostě věci specifické pro céčko, ne pro programování obecně - algoritimizace.

Subjektivně by se mi taky líbilo, aby první jazyk pro prváky lépe vedl k objektovému nebo funkcionálnímu programování, ne k procedurálnímu. Ale vstřícnost k začátečníkům, jednoduchost a dobré chybové hlášky jsou v tomhle nejdůležitější.

var React = require('react');
var StoreWatch = require('../mixins/StoreWatch');
/**
* Komponenta factory
*
* @param {IssueActions} issueActions
* @param {IssueStore} issueStore
* @param {Spinner} Spinner
* @param {Errors} Errors
@janmarek
janmarek / twitter.css
Last active August 29, 2015 13:56
twitter
.global-nav-inner .container {width: 890px;}
.topbar-tweet-btn button {margin-right: 0 !important}
h1.Icon--bird {display: none !important}
// black header if you want it
.global-nav-inner {background: black;}
.nav>li>a, .nav .active a {color: #EEE}
@janmarek
janmarek / FocusDirective.js
Created September 23, 2013 16:32
Angular focus directive
function FocusDirective() {
return {
restrict: 'A',
require: 'ngModel',
link: function (scope, element, attrs, ctrl) {
// add inputCtrl to scope
scope[ctrl.$name + 'InputCtrl'] = ctrl;
ctrl.$focused = false;
ctrl.enableEvents = true;
element.bind('focus', function (evt) {
@janmarek
janmarek / bootstrap.css
Last active December 15, 2015 08:29
Bootstrap zkompilovaný Lessem pro PHP a pro JS
.clearfix {
*zoom: 1;
}
.clearfix:before,
.clearfix:after {
display: table;
content: "";
line-height: 0;
}
<?php
/**
* @param \Doctrine\ORM\EntityManager $entityManager
* @param \Namespace\FooRepository $fooRepository
* @param \Namespace\BarRepository $barRepository
*/
public function __construct(EntityManager $entityManager, FooRepository $fooRepository, BarRepository $barRepository)
{
...
@janmarek
janmarek / DoctrineQueryBuilderBuilder.php
Created October 10, 2012 17:43
DoctrineQueryBuilderBuilder
/**
* @author Jan Marek
*
* @method QueryBuilderBuilder andWhere() andWhere(\mixed $where)
* @method QueryBuilderBuilder orderBy() orderBy(\string $sort, \string $order = null)
* @method QueryBuilderBuilder from() from(\string $from, \string $alias, \string $indexBy = null)
* @method QueryBuilderBuilder select() select(\string $select = null)
* @method QueryBuilderBuilder addSelect() addSelect(\string $select = null)
* @method QueryBuilderBuilder setMaxResults() setMaxResults(\int $maxResults)
* @method QueryBuilderBuilder setFirstResult() setFirstResult(\int $firstResults)