SlideShare a Scribd company logo
«# Self Modifying Code»​
Martin Kleppe
@aemkei
Ubilabs
Ubilabs
«# Self Modifying Code»​
«# Self Modifying Code»​
«# Self Modifying Code»​
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNdyssoooyNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMNy/..` ``` ``..--/+/+yydNMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMNy- ` `....+mMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMNs.` `` `...`/hNMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMN+` `-dMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMN: ` ``-dMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMN- ` ``.:/dMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMdo` `.-/-hMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMNo` .:/:/.:hMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMN/ `.../sms.:oNMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMo` ``..-//:yNMMm::shMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMy. ``..---.``.::///++oyNMMMMM+:soMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMN- ``..---::::/+ooosydmNMMMMMMN+//+NMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMy- `....---:://+oyhdmNNNNMMMMMMmy/-+NMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMmo `....----::/++ohmmNNNNMMMMMMMMN/./mMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMN/ `.....``````..-::/osyhddhhddddmNd..+NMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMy` `.--...```````` ``-:/+++/:.``./hs`oNMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMNo+:.` .---..``` `.`````.:+o:.` `:+mNNMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMm:` ```----...``````:-``.``-+mN+..``:NNMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMmh-..`..`-::--........---....-oNMNdyyhmMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMho:. `-..``-:----..--::::::-...-+NMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMNo. ` `.-------:://///:-....-/hMMMMMMMMMh`oMMMMMMMMMMMMMMMM
MMMMMMMMMMMMN- .-:------:::::--.`..--/sMMMh+yNMMh sMMMMMMMMMMMMMMM
MMMMMMMMMMMMo `.-----..........`````.-+dNm+-/dN- +MMMMMMMMMMMMMMM
MMMMMMMMMMMM. `.--...````````````````.oNMMo:.o/ +MMMMMMMMMMMMMMM
MMMMMMMMMMMM/ `....````` ````.-:/+hmmy-:/y oMMMMMMMMMMMMMMM
MMMMMMMMMMMMs ``..````````` ```.-+shyydh. dMMMMMMMMMMMMMMM
MMMMMMMMMMMMy ``````````..``````--:/yMMNmh. /mMMMMMMMMMMMMMM
MMMMMMMMMMMMs `````` ``````````.-oNNh+. .+oyhhmMMMMMMMM
MMMMMMMMMMMM. ` ````````....-:ohmNd/` `-:+sh
MMMMMMMMMMMs `...--/ydy:
MMMMMMMMmdy- `.-.
MMMNy+-.
ms: ```
Martin Kleppe
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
__
_/ 
/'   
__ __ ___ ___ /_,   /'
/'__` /'__`/' __` __`/_/   , <
___ / L.. __// / /      `____
/___  __/._____ _ _ _  _ _ ____
/___/ /__//_//____//_//_//_/ /_//_//____/ @aemkei
aem1k.com/world
.<script>
eval(z='p="<"+"pre>"/* ,.oq#+ ,._, */;for(y in n="zw24l6k
4e3t4jnt4qj24xh2 x/* =<,m#F^ A W###q. */42kty24wrt413n243n
9h243pdxt41csb yz/* #K q##H######Am */43iyb6k43pk7243nm
r24".split(4)){/* dP cpq#q##########b, */for(a in t=pars
eInt(n[y],36)+/* p##@###YG=[#######y */(e=x=r=[]))for
(r=!r,i=0;t[a/* d#qg `*PWo##q#######D */]>i;i+=.05)wi
th(Math)x-= /* aem1k.com Q###KWR#### W[ */.05,0>cos(o=
new Date/1e3/* .Q#########Md#.###OP A@ , */+x/PI)&&(e[~
~(32*sin(o)*/* , (W#####Xx######.P^ T % */sin(.5+y/7))
+60] =-~ r);/* #y `^TqW####P###BP */for(x=0;122>
x;)p+=" *#"/* b. OQ####x#K */[e[x++]+e[x++
]]||(S=("eval"/* l `X#####D , */+"(z='"+z.spl
it(B = "")./* G####B" # */join(B+B).split
(Q="'").join(B+Q/* VQBP` */)+Q+")//m1k")[x/2
+61*y-1]).fontcolor/* TP */(/w/.test(S)&&"#
03B");document.body.innerHTML=p+=B+"n"}setTimeout(z)')//
</script>
«# Self Modifying Code»​
aem1k.com/mandelcode
<pre id=P>
<script> E
= 1
, z=1.07 ;
function s( a)
{ for(a&&(E=!E),H="",z *=
.9,T*=.8,Y=0;2>Y;Y+=.1) {
for (X=0;2>X;X+=.04){for(x=y=i
=0;99>i &&99>=x*x+y*y;i++)t=2*x*y,x
= x*x-y*y+z*X -z-Z/(1-T),y=t+z*Y-z-U;(/*
MANDELCODE=A-QUINE-BY-AEMKEI=CLICK-TO-ZOOM*/
H )+=" .+#"[ i%5]}H+=n}!E&&setTimeout(s
,99),P[ I]=H}Z=1.74909351853611232,
U = 3.40212772e-7,onclick=s;n
="n";P.textContent="<" +
"pre id=P>n"+P[I= "i"+
"nnerHTML" ]
T /*aem1k*/
= -
2
</script>
«# Self Modifying Code»​
«# Self Modifying Code»​
jsfuck.com
«# Self Modifying Code»​
[][(![]+[])[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]+(![]+[])[+[[!+
+!+[]]]]+(!![]+[])[+[[+[]]]]+(!![]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+!+[]]
[([][(![]+[])[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]+(![]+[])[+[[
[]+!+[]]]]+(!![]+[])[+[[+[]]]]+(!![]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+![+
[]]]]]+[])[+[[!+[]+!+[]+!+[]]]]+([][(![]+[])[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]
[]+!+[]+![]]]]+(![]+[])[+[[!+[]+!+[]]]]+(!![]+[])[+[[+[]]]]+(!![]+[])[+[[!+[]+!
+!+[]]]]+(!![]+[])[+[[+!+[]]]]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]]]+([][[]]
[])[+[[+!+[]]]]+(![]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+[]]]]+(!![]+[])[+[[
[]]]]+([][[]]+[])[+[[+[]]]]+([][(![]+[])[[[[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+
[]+!+[]]]]+(![]+[])[+[[!+[]+!+[]]]]+(!![]+[])[+[[+[]]]]+(!![]+[])[+[[!+[]+!+[]+
[]]]]+(!![]+[])[+[[+!+[]]]]]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+[]]]]+([][(
+[])[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]+(![]+[])[+[[!+[]+!+[]
+(!![]+[])[+[[+[]]]]+(!![]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+!+[]]]]]+[])[
[[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+!+[]]]]]((![]+[])[+[[+!+[]]]]+
[]+[])[+[[!+[]+!+[]]]]+(!![]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+!+[]]]]+(!!
[])[+[[+[]]]]+([][(![]+[])[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]
[]+[])[+[[!+[]+!+[]]]]+(!![]+[])[+[[+[]]]]+(!![]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]
[])[+[[+!+[]]]]]+[])[+[[+!+[]]]+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]+[+!+[]]+([][(![]+
[+[[+[]]]]+([][[]]+[])[+[[!+[]+!+[]+!+[]+!+[]+!+[]]]]+(![]+[])[+[[!+[]+!+[]]]]+
[]+[])[+[[+[]]]]+(!![]+[])[+[[!+[]+!+[]+!+[]]]]+(!![]+[])[+[[+!+[]]]]]+[])[+[[+
DHTML5DHTML5
<!DOCTYPE html>
<html>
<head>
<title>Title</title>
<script type="text/javascript">
function init() { ... }
</script>
</head>
<body onload="init()">
...
</body>
</html>
<html>
<head>
<title>Title</title>
<script type="text/javascript">
function init() { ... }
</script>
</head>
<body onload="init()">
...
</body>
</html>
<head>
<title>Title</title>
<script type="text/javascript">
function init() { ... }
</script>
</head>
<body onload="init()">
...
</body>
<body onload="init()">
...
</body>
<title>Title</title>
<script type="text/javascript">
function init() { ... }
</script>
<script type="text/javascript">
function init() { ... }
</script>
<body onload="init()">
...
</body>
<script>
function init() { ... }
</script>
<body onload="init()">
...
</body>
<body onload="...">
...
</body>
<body onload="...">
<body onload=...>
<body onload=...>
<body onload=alert(1)>
<body onload=document.write(1)>
<body onload=document.body.innerHTML=1>
<body id=b onload=b.innerHTML=1>
<body id=b onload=b.innerHTML='<pre>'+1>
<body id=b onload=b.innerHTML='<pre>'+1>
<body id=b onload=b.innerHTML='<pre>'+1>
<body id=b onload="b.innerHTML='<pre>'+1">
<body id=b onload="b.innerHTML='<pre>'+1">
<body onload='b.innerHTML="<pre>"+1'id=b >id=b onload="b.innerHTML='<pre>'+1"
<body onload="b.innerHTML='<pre>'+1"id=b>
<body onload="b.innerHTML='<pre>'+1"id=b>
<pre id=b>
<pre id=b><script>b.innerHTML=1</script>
min.js
var x = Math.random();
var y = Math.random();
var z = Math.max(x, y);
x = Math.random();
y = Math.random();
z = Math.max(x, y);
M = Math;
x = Math.random();
y = Math.random();
z = Math.max(x, y);
M = Math;
x = M.random();
y = M.random();
z = M.max(x, y);
M = Math;
r = M.random;
x = M.random();
y = M.random();
z = M.max(x, y);
M = Math;
r = M.random;
x = r();
y = r();
z = M.max(x, y);
M = Math;
r = "random";
x = M[r]();
y = M[r]();
z = M.max(x, y);
M = Math;
r = "random";
x = M[r="random"]();
y = M[r]();
z = M.max(x, y);
M = Math;
x = M[r="random"]();
y = M[r]();
z = M.max(x, y);
with (Math){
x = random();
y = random();
z = max(x, y);
}
with (Math)
x = random(),
y = random(),
z = max(x, y);
with (Math)
x = (r=random)(),
y = r(),
z = max(x, y);
with (Math)
z = max((r=random)(), r());
with(Math)z=max((r=random)(),r())
aem1k.com/deathstar
Зв
езда
<bOdY
oNLOAd=
"Я=[];Л=
{};Ж=!Я;З=
!Ж;Ч=!+Я;Д=
Ч+Ч;П=З+Я;Б=Д+Ч;Ю=Ж+Я;Ф=[Ж]+Я[Я];И=П[+Ч]
Ы=Я[Ю[+Я]+Ф[+Ч+[+Я]]+Ю[Д]+П[+Я]+П[
Б]+И];C=Я[Я]+Я;P=Я+Л;Ь=Д+Б;Ш
=+Ч;X=+Я;Й=' ';К='Й'
H=П[X];T=Д+[X];Ы[P
[Ь]+P[Ш]+C[Ш]+Ю[Б]+H
+И+C[X]+P[Ь]+H+P[Ш]+И
](Ю[Ш]+Ю[ Д]+П[Б]+И
+H+(Ж+Ы )[T]+К+
(З+Ы) [T])(
)"> смЕ
р Ти
Зв
езда
<body
onload=
"Я=[];Л=
{};Ж=!Я;З=
!Ж;Ч=!+Я;Д=
Ч+Ч;П=З+Я;Б=Д+Ч;Ю=Ж+Я;Ф=[Ж]+Я[Я];И=П[+Ч]
Ы=Я[Ю[+Я]+Ф[+Ч+[+Я]]+Ю[Д]+П[+Я]+П[
Б]+И];C=Я[Я]+Я;P=Я+Л;Ь=Д+Б;Ш
=+Ч;X=+Я;Й=' ';К='Й'
H=П[X];T=Д+[X];Ы[P
[Ь]+P[Ш]+C[Ш]+Ю[Б]+H
+И+C[X]+P[Ь]+H+P[Ш]+И
](Ю[Ш]+Ю[ Д]+П[Б]+И
+H+(Ж+Ы )[T]+К+
(З+Ы) [T])(
)"> смЕ
р Ти
Зв
езда
<body
onload=
"Я=[];Л=
{};Ж=!Я;З=
!Ж;Ч=!+Я;Д=
Ч+Ч;П=З+Я;Б=Д+Ч;Ю=Ж+Я;Ф=[Ж]+Я[Я];И=П[+Ч]
Ы=Я[Ю[+Я]+Ф[+Ч+[+Я]]+Ю[Д]+П[+Я]+П[
Б]+И];C=Я[Я]+Я;P=Я+Л;Ь=Д+Б;Ш
=+Ч;X=+Я;Й=' ';К='Й'
H=П[X];T=Д+[X];Ы[P
[Ь]+P[Ш]+C[Ш]+Ю[Б]+H
+И+C[X]+P[Ь]+H+P[Ш]+И
](Ю[Ш]+Ю[ Д]+П[Б]+И
+H+(Ж+Ы )[T]+К+
(З+Ы) [T])(
)"> смЕ
р Ти
Зв
езда
<body
onload=
"Я=[];Л=
{};Ж=!Я;З=
!Ж;Ч=!+Я;Д=
Ч+Ч;П=З+Я;Б=Д+Ч;Ю=Ж+Я;Ф=[Ж]+Я[Я];И=П[+Ч]
Ы=Я[Ю[+Я]+Ф[+Ч+[+Я]]+Ю[Д]+П[+Я]+П[
Б]+И];C=Я[Я]+Я;P=Я+Л;Ь=Д+Б;Ш
=+Ч;X=+Я;Й=' ';К='Й'
H=П[X];T=Д+[X];Ы[P
[Ь]+P[Ш]+C[Ш]+Ю[Б]+H
+И+C[X]+P[Ь]+H+P[Ш]+И
](Ю[Ш]+Ю[ Д]+П[Б]+И
+H+(Ж+Ы )[T]+К+
(З+Ы) [T])(
)"> смЕ
р Ти
«# Self Modifying Code»​
«# Self Modifying Code»​
="" , = ! + , =! + , =
+{}, = [ ++ ], = [ = ] , =
++ + , = [ + ], [ += [
]+( . + )[ ] + [ ]+ + + [ ]+
+ + [ ]+ ][ ] ( [
]+ [ ]+ [ ]+
+ + "( )"
)()
«# Self Modifying Code»​
aem1k.com/matrix
without Latin characters?
How to write JavaScript
1. Escape Sequences
2. Playing Scrabble
a
a u0061
u0061u006cu0065u0072u0074(1)
a l e r t (1)
u96e8
И u0418
a x61
"a" "x61"
"a" "141"
[]["155141160]["
143157156163164
162165143164157
162"]("141154145
162164506151")()
[]["155141160"]["
143157156163164
162165143164157
162"]("141154145
162164506151")()
[][" m a p "]["
c o n s t 
r u c t o 
r "](" a l e 
r t ( 1 ) ")()
[]["map"]["constructor"]("alert(1)")()
[]["map"]["constructor"]("alert(1)")()
function["constructor"]("alert(1)")()
function["constructor"]("alert(1)")()
Function("alert(1)")()
Function("alert(1)")()
eval("alert(1)")
1. Escape Sequences
2. Playing Scrabble
![] => false
!![] => true
![] + "" => "false"
!![] + "" => "true"
"true"[0] => "t"
"true"[1] => "r"
"true"[2] => "u"
"true"[3] => "e"
"false" [1]
"false" [2]
"true" [3]
"true" [1]
"true" [0]
f a l s e
f a l s e
t r u e
t r u e
t r u e
f a l s e
f a l s e
t r u e
t r u e
t r u e
f a l s e
o b j e c t
t r u e
f a l s e
o b j e c t
o b j e c t
f a l s e
t r u e
o b j e c t
o b j e c t
u n d e f i n e d
f a l s e
t r u e
t r u e
t r u e
o b j e c t
t r u e
o b j e c t
t r u e
[]["map"]["constructor"]("alert(1)")()
«# Self Modifying Code»​
Invisible Code
Can we hide JavaScript
inside itself?
00 | Null
01 | Start of Heading
02 | Start of Text
Whitespace
04 | End of Transmission
05 | Enquiry
06 | Acknowledge
07 | Bell (audible or
b | 08 | Backspace
t | 09 | Horizontal Tabulation
n | 0A | Line Feed
v | 0B | Vertical Tab
f | 0C | Form Feed
r | 0D | Carriage Return
0E | Shift Out
0F | Shift In
00 | Null
01 | Start of Heading
02 | Start of Text
03 | End of Text
04 | End of Transmission
05 | Enquiry
06 | Acknowledge
07 | Bell
b | 08 | Backspace
t | 09 | Horizontal Tabulation
n | 0A | Line Feed
v | 0B | Vertical Tab
f | 0C | Form Feed
r | 0D | Carriage Return
0E | Shift Out
0F | Shift In
10 | Data Link Escape
11 | Device Control 1
12 | Device Control 2
13 | Device Control 3
14 | Device Control 4
15 | Negative Acknowledge
16 | Synchronous Idle
17 | End of Transmission Block
18 | Cancel
19 | End of Medium
1A | Substitute
1B | Escape
1C | File Separator
1D | Group Separator
1E | Record Separator
1F | Unit Separator
<body onload=eval(eval('"'+escape("").replace(/..(.)..(.)/g,'x$1$2')+'"'))>
aem1k.com/0
«# Self Modifying Code»​
<body onload=eval(eval('"'+escape("").replace(/..(.)..(.)/g,'x$1$2')+'"'))>
<body onload=eval(eval('"'+escape("").replace(/..(.)..(.)/g,'x$1$2')+'"'))>
for(b=i=[X=3772];i--;)b[i]=68*i%9%2;setInterval('for
(a=b,b=[h="<pre>"],i=0;i++<X;i%w||(h+="n")){for(d=j
=0;e=[1,91,w,93][j++];)d+=a[i+e]+a[i-e];h+=".#"[b[i]
=3==d|a[i]&2==d]}document.body.innerHTML=h',w=92)
1616161F171212181612131D1619131D151B1518131D1313131713171312
151D131B1619121D121D131B12191612151B1619151D131D13161318121A
16191215131912151312131B1713161517141419161E1714161517121716
1611161C121812171616161F171212181611131D1612121C1612131D151B
1618131D1212131C171017121615131E1212151D121C1619131D1310131B
1619121B121B131C1518131B161912151717171C171C12181618121B131D
1212151C151C161E121212191219171B1616161F171212181614131D161A
131D1310131B1615131D151B1311121C13191311121C1717121C13191313
151D151B161A121B121B151D131B12191614121B131D1611151B1619121B
1615151D121B1611151B1619121D1615151D131B1618121B131D1212121E
12131212151B1612151B1619151D131D1313131D131D1614171C1611151B
1619151D12161312131D131D1614151D171D1614161F16131715161D1615
161E1714121E1612161F16141719121E1619161E161E1615171214181514
141D141C131D16181217121C1717131D131913121219
escape('').replace(/..(.)..(.)/g,'x$1$2')
escape('').replace(/..(.)..(.)/g,'x$1$2')
escape('').replace(/..(.)..(.)/g,'x$1$2')
escape('').replace(/..(.)..(.)/g,'x$1$2')
0 1 2 3 4 5 6 7 8 9 A B C D E F
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
16 11 16 1C 16 15 17 12 17 14 12 18 13 11 12 19
%16%11%16%1C%16%15%17%12%17%14%12%18%13%11%12%19
6 1 6 C 6 5 7 2 7 4 2 8 3 1 2 9
61 6C 65 72 74 28 31 29
x61x6Cx65x72x74x28x31x29
a l e r t ( 1 )
-moz-control-character-visibility: visible;
-moz-control-character-visibility: visible;
").replace(/..(.)..(.)/g,'x$1$2')escape("
").replace(/..(.)..(.)/g,'x$1$2')
escape("1616161F171212181612131D1619131D151B1518131D
1313131713171312151D131B1619121D121D131B12191612151B1619151D13
1D13161318121A16191215131912151312131B1713161517141419161E1714
1615171217161611161C121812171616161F171212181611131D1612121C16
12131D151B1618131D1212131C171017121615131E1212151D121C1619131D
1310131B1619121B121B131C1518131B161912151717171C171C1218161812
1B131D1212151C151C161E121212191219171B1616161F171212181614131D
161A131D1310131B1615131D151B1311121C13191311121C1717121C131913
13151D151B161A121B121B151D131B12191614121B131D1611151B1619121B
1615151D121B1611151B1619121D1615151D131B1618121B131D1212121E12
131212151B1612151B1619151D131D1313131D131D1614171C1611151B1619
151D12161312131D131D1614151D171D1614161F16131715161D1615161E17
14121E1612161F16141719121E1619161E161E1615171214181514141D141C
131D16181217121C17
... within Mozilla;
some people like
the idea of displaying
control characters
“
”
Let us play the game
on the next level …
Tetris
те́ трис
τέτρα + теннис
<script>[]["155141
163164162165143
166141154(145166
053145163143141
145160154141143
175(56)56173065
175(56)57147054
62446347)53047
160"]["143157156
164157162"]("145
141154(4742047
160145(‘֥֠')056162
145(57056173065
175(56)05617365
47134134446144
4247))")()</script>
<script>[]["155141
163164162165143
166141154(145166
053145163143141
145160154141143
175(56)56173065
175(56)57147054
62446347)53047
160"]["143157156
164157162"]("145
141154(4742047
160145(‘֥֠')056162
145(57056173065
175(56)05617365
47134134446144
4247))")()</script>
<script>[]["155141"+/* */"160"]["143157156
163164162165143"+/* */"164157162"]("145
166141154(145166"/* */+"141154(4742047
053145163143141"+/* */"160145(‘֥֠')056162
145160154141143"+/* */"145(57056173065
175(56)56173065"+/* */"175(56)05617365
175(56)57147054"+/* */"47134134446144
62446347)53047"+/* */"4247))")()</script>
<script>[]["155141"+/* */"160"]["143157156
163164162165143"+/* */"164157162"]("145
166141154(145166"/* */+"141154(4742047
053145163143141"+/* */"160145(‘֥֠')056162
145160154141143"+/* */"145(57056173065
175(56)56173065"+/* */"175(56)05617365
175(56)57147054"+/* */"47134134446144
62446347)53047"+/* */"4247))")()</script>
<script>[]["155141"+/* */"160"]["143157156
163164162165143"+/* */"164157162"]("145
166141154(145166"/* */+"141154(4742047
053145163143141"+/* */"160145(‘֥֠')056162
145160154141143"+/* */"145(57056173065
175(56)56173065"+/* */"175(56)05617365
175(56)57147054"+/* */"47134134446144
62446347)53047"+/* */"4247))")()</script>
<script>[]["155141"+/* */"160"]["143157156
163164162165143"+/* */"164157162"]("145
166141154(145166"/* */+"141154(4742047
053145163143141"+/* */"160145(‘֥֠')056162
145160154141143"+/* */"145(57056173065
175(56)56173065"+/* */"175(56)05617365
175(56)57147054"+/* */"47134134446144
62446347)53047"+/* */"4247))")()</script>
<script>[]["155141"+/* */"160"]["143157156
163164162165143"+/* ..... */"164157162"]("145
166141154(145166"/* ..... */+"141154(4742047
053145163143141"+/* ..... */"160145(‘֥֠')056162
145160154141143"+/* ..... */"145(57056173065
175(56)56173065"+/* ..... */"175(56)05617365
175(56)57147054"+/* ..... */"47134134446144
62446347)53047"+/* */"4247))")()</script>
«# Self Modifying Code»​
aem1k.com/4
[]
["155141160"]
["143157156163164162165143164157162"]
("145166141154(145166141154(474247053
145163143141160145("")56162145160154
141143145(575656(56)5656(56)57147054
471341341704461446247)53474247))")
()
[]
["map"]
["constructor"]
("145166141154(145166141154(474247053
145163143141160145("")56162145160154
141143145(575656(56)5656(56)57147054
471341341704461446247)53474247))")
()
[]
["map"]
["constructor"]
("145166141154(145166141154(474247053
145163143141160145("")56162145160154
141143145(575656(56)5656(56)57147054
471341341704461446247)53474247))")
()
[]
["map"]
["constructor"]
("eval(escape('').replace(...))")
()
escape('')
.replace(
/..(.)..(.)/g,
'x$1$2'
)
escape('')
.replace(
/.{5}(.).{5}(.).{5}(.)/g,
'$1$2$3'
)
0 1 2 3 4 5 6 7
8 9 A B C D E F
0 1 2 3 4 5 6 7
1 1 1 1 1 1 1 1
4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4
0 1 2 3 4 5 6 7
1 1 1 1 1 1 1 1
4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4
0 1 2 3 4 5 6 7
֠ ֡ ֢ ֣ ֤ ֥ ֦ ֧
֠ ֡ ֢ ֣ ֤ ֥ ֦ ֧
֢֣֤֥֦֧֠֡" "
1 1 1 1 1 1
4 4 4 4 4 4
4 4 4 4 4 4
1 4 1 1 5 4
%u05A1%u05A4%u05A1%u05A1%u05A5%u05A4
1 4 1 1 5 4
141 154
141 154
141154145162164506151
a l e r t ( 1 )
«# Self Modifying Code»​
<body onload='setInterval(onkeydown=function(d)
{for(d=d||5,(e=d.keyCode)&&(d=e%2?e%3?-1:1:5),t
="",d=c-d,e=a|b<<d,0>d|a&b<<d&&(a=e=parseInt((a
|b<<c).toString(d=32).replace(/v/,""),d),b=new
Date%2?1:3),c=d,i=1;31>i;)t+=".#"[1&(1<<30|e).
toString(2)[i]]+(i++%5?"":"n");O.innerHTML=t},
888,a=0,b=3,c=32)'><pre id=O>
<body onload='setInterval(onkeydown=function(d)
{for(d=d||5,(e=d.keyCode)&&(d=e%2?e%3?-1:1:5),t
="",d=c-d,e=a|b<<d,0>d|a&b<<d&&(a=e=parseInt((a
|b<<c).toString(d=32).replace(/v/,""),d),b=new
Date%2?1:3),c=d,i=1;31>i;)t+=".#"[1&(1<<30|e).
toString(2)[i]]+(i++%5?"":"n");O.innerHTML=t},
888,a=0,b=3,c=32)'><pre id=O>
<body onload='setInterval(onkeydown=function(d)
{for(d=d||5,(e=d.keyCode)&&(d=e%2?e%3?-1:1:5),t
="",d=c-d,e=a|b<<d,0>d|a&b<<d&&(a=e=parseInt((a
|b<<c).toString(d=32).replace(/v/,""),d),b=new
Date%2?1:3),c=d,i=1;31>i;)t+=".#"[1&(1<<30|e).
toString(2)[i]]+(i++%5?"":"n");O.innerHTML=t},
888,a=0,b=3,c=32)'><pre id=O>
<body onload='setInterval(onkeydown=function(d)
{for(d=d||5,(e=d.keyCode)&&(d=e%2?e%3?-1:1:5),t
="",d=c-d,e=a|b<<d,0>d|a&b<<d&&(a=e=parseInt((a
|b<<c).toString(d=32).replace(/v/,""),d),b=new
Date%2?1:3),c=d,i=1;31>i;)t+=".#"[1&(1<<30|e).
toString(2)[i]]+(i++%5?"":"n");O.innerHTML=t},
888,a=0,b=3,c=32)'><pre id=O>
<body onload='setInterval(onkeydown=function(d)
{for(d=d||5,(e=d.keyCode)&&(d=e%2?e%3?-1:1:5),t
="",d=c-d,e=a|b<<d,0>d|a&b<<d&&(a=e=parseInt((a
|b<<c).toString(d=32).replace(/v/,""),d),b=new
Date%2?1:3),c=d,i=1;31>i;)t+=".#"[1&(1<<30|e).
toString(2)[i]]+(i++%5?"":"n");O.innerHTML=t},
888,a=0,b=3,c=32)'><pre id=O>
<body onload='setInterval(onkeydown=function(d)
{for(d=d||5,(e=d.keyCode)&&(d=e%2?e%3?-1:1:5),t
="",d=c-d,e=a|b<<d,0>d|a&b<<d&&(a=e=parseInt((a
|b<<c).toString(d=32).replace(/v/,""),d),b=new
Date%2?1:3),c=d,i=1;31>i;)t+=".#"[1&(1<<30|e).
toString(2)[i]]+(i++%5?"":"n");O.innerHTML=t},
888,a=0,b=3,c=32)'><pre id=O>
.....
..##.
.....
..... 00000
..##. => 00110
..... 00000
..... 00000
..##. => 00110 192
..... 00000
..... 00000
..... => 00000 192>>5=6
..##. 00110
..... 00000
..... => 00000 6>>1=3
...## 00011
..... 00000
..... => 00000 6&3 =2
...X. 00010
aem1k.com/tetris
WHY???
███████╗██╗ ██╗███╗ ██╗
██╔════╝██║ ██║████╗ ██║
█████╗ ██║ ██║██╔██╗ ██║
██╔══╝ ██║ ██║██║╚██╗██║
██║ ╚██████╔╝██║ ╚████║
╚═╝ ╚═════╝ ╚═╝ ╚═══╝
██╗ ██╗███╗ ███╗██╗████████╗███████╗
██║ ██║████╗ ████║██║╚══██╔══╝██╔════╝
██║ ██║██╔████╔██║██║ ██║ ███████╗
██║ ██║██║╚██╔╝██║██║ ██║ ╚════██║
███████╗██║██║ ╚═╝ ██║██║ ██║ ███████║
╚══════╝╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚══════╝
███████╗ ██████╗ ██████╗██╗ ██╗███████╗
██╔════╝██╔═══██╗██╔════╝██║ ██║██╔════╝
█████╗ ██║ ██║██║ ██║ ██║███████╗
██╔══╝ ██║ ██║██║ ██║ ██║╚════██║
██║ ╚██████╔╝╚██████╗╚██████╔╝███████║
╚═╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝
██╗ █████╗ ███╗ ██╗ ██████╗ ██╗ ██╗ █████╗ ██████╗ ███████╗
██║ ██╔══██╗████╗ ██║██╔════╝ ██║ ██║██╔══██╗██╔════╝ ██╔════╝
██║ ███████║██╔██╗ ██║██║ ███╗██║ ██║███████║██║ ███╗█████╗
██║ ██╔══██║██║╚██╗██║██║ ██║██║ ██║██╔══██║██║ ██║██╔══╝
███████╗██║ ██║██║ ╚████║╚██████╔╝╚██████╔╝██║ ██║╚██████╔╝███████╗
╚══════╝╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝ ╚══════╝
██╗ ██╗ █████╗ ███╗ ██╗
██║ ███║██╔══██╗████╗ ██║
██║ ╚██║╚█████╔╝██╔██╗ ██║
██║ ██║██╔══██╗██║╚██╗██║
███████╗██║╚█████╔╝██║ ╚████║
╚══════╝╚═╝ ╚════╝ ╚═╝ ╚═══╝
::::::::::: :::    :::     :::     ::::    ::: :::    :::
    :+:     :+:    :+:   :+: :+:   :+:+:   :+: :+:    :+:
    +:+     +:+    +:+  +:+   +:+  :+:+:+  +:+  +:+  +:+ 
    +#+     +#++:++#++ +#++:++#++: +#+ +:+ +#+   +#++:+  
    +#+     +#+    +#+ +#+     +#+ +#+  +#+#+#  +#+  +#+ 
    #+#     #+#    #+# #+#     #+# #+#   #+#+# #+#    #+#
__
_/ 
/'   
__ __ ___ ___ /_,   /'
/'__` /'__`/' __` __`/_/   , <
___ / L.. __// / /      `____
/___  __/._____ _ _ _  _ _ ____
/___/ /__//_//____//_//_//_/ /_//_//____/ @aemkei

More Related Content

Viewers also liked (18)

PDF
"Пиринговый веб на JavaScript"
FDConf
 
PPTX
JavaScript: прошлое, настоящее и будущее.
FDConf
 
PDF
CSSO — сжимаем CSS
FDConf
 
PDF
«Пиринговый веб на JavaScript», Денис Глазков
Mail.ru Group
 
PDF
Будь первым
FDConf
 
PDF
«Свой PhoneGap за 15 минут», Алексей Охрименко (IPONWEB)
Mail.ru Group
 
PPTX
«Идеи и алгоритмы создания масштабируемой архитектуры в играх»​
FDConf
 
PPTX
Dart: питание и сила для вашего проекта
FDConf
 
PPTX
«Компонентная верстка с AngularJS», Андрей Яманов (CTO TeamHunt)
Mail.ru Group
 
PPTX
Migrate your React.js application from (m)Observable to Redux
FDConf
 
PPTX
Если у вас нету тестов...
FDConf
 
PDF
Redux. From twitter hype to production
FDConf
 
PDF
"Service Worker: Let Your Web App Feel Like a Native "
FDConf
 
PDF
«Как перестать отлаживать асинхронные вызовы и начать жить»​
FDConf
 
PPTX
Javascript in big project
Evgeny Gusev
 
PDF
Scalable Angular 2 Application Architecture
FDConf
 
PPTX
Root canal morphology nidhi
drnids_modern
 
PDF
В погоне за производительностью
Denys Mishunov
 
"Пиринговый веб на JavaScript"
FDConf
 
JavaScript: прошлое, настоящее и будущее.
FDConf
 
CSSO — сжимаем CSS
FDConf
 
«Пиринговый веб на JavaScript», Денис Глазков
Mail.ru Group
 
Будь первым
FDConf
 
«Свой PhoneGap за 15 минут», Алексей Охрименко (IPONWEB)
Mail.ru Group
 
«Идеи и алгоритмы создания масштабируемой архитектуры в играх»​
FDConf
 
Dart: питание и сила для вашего проекта
FDConf
 
«Компонентная верстка с AngularJS», Андрей Яманов (CTO TeamHunt)
Mail.ru Group
 
Migrate your React.js application from (m)Observable to Redux
FDConf
 
Если у вас нету тестов...
FDConf
 
Redux. From twitter hype to production
FDConf
 
"Service Worker: Let Your Web App Feel Like a Native "
FDConf
 
«Как перестать отлаживать асинхронные вызовы и начать жить»​
FDConf
 
Javascript in big project
Evgeny Gusev
 
Scalable Angular 2 Application Architecture
FDConf
 
Root canal morphology nidhi
drnids_modern
 
В погоне за производительностью
Denys Mishunov
 

More from FDConf (12)

PPT
Антон Киршанов - «Квант изменения. Реактивные реакции на React.
FDConf
 
PDF
Игорь Еростенко - Создаем виртуальный тур
FDConf
 
PDF
Илья Климов - Reason: маргиналы против хайпа
FDConf
 
PDF
Максим Щепелин - Доставляя веб-контент в игру
FDConf
 
PDF
Александр Черноокий - Как правило "победитель получает все" работает и не раб...
FDConf
 
PDF
Михаил Волчек - Что такое Цифровая мастерская?
FDConf
 
PDF
Radoslav Stankov - Handling GraphQL with React and Apollo
FDConf
 
PDF
Виктор Русакович - Выборы, выборы, все фреймворки… приторны
FDConf
 
PDF
Slobodan Stojanovic - 8 1/2 things about serverless
FDConf
 
PPTX
Тимофей Лавренюк - Почему мне зашел PWA?
FDConf
 
PDF
В погоне за производительностью
FDConf
 
PDF
«От экспериментов с инфраструктурой до внедрения в продакшен»​
FDConf
 
Антон Киршанов - «Квант изменения. Реактивные реакции на React.
FDConf
 
Игорь Еростенко - Создаем виртуальный тур
FDConf
 
Илья Климов - Reason: маргиналы против хайпа
FDConf
 
Максим Щепелин - Доставляя веб-контент в игру
FDConf
 
Александр Черноокий - Как правило "победитель получает все" работает и не раб...
FDConf
 
Михаил Волчек - Что такое Цифровая мастерская?
FDConf
 
Radoslav Stankov - Handling GraphQL with React and Apollo
FDConf
 
Виктор Русакович - Выборы, выборы, все фреймворки… приторны
FDConf
 
Slobodan Stojanovic - 8 1/2 things about serverless
FDConf
 
Тимофей Лавренюк - Почему мне зашел PWA?
FDConf
 
В погоне за производительностью
FDConf
 
«От экспериментов с инфраструктурой до внедрения в продакшен»​
FDConf
 
Ad

«# Self Modifying Code»​