-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
123 lines (78 loc) · 7.27 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<title>Flex</title>
<meta name="author" content="{ map[]}">
<meta name="description" content="Home page of the Flex team at YC Research HARC">
<link rel="stylesheet" href="../flex/css/normalize.css">
<link rel="stylesheet" href="../flex/css/flex.css">
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lora:400,700,400italic,700italic">
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Open+Sans:800&text=HARC">
</head>
<body>
<header><a href="https://harc.ycr.org" class="harc-logo">HARC</a></header>
<div id="content" role="main">
<h1 id="flex">Flex</h1>
<p>The Flex group uses technology to improve the range and fluidity of human expression. We invent new concepts and representations that amplify people’s ability to create, connect, and understand. We create tools that blur the line between using and creating, in order to provide a conversational medium for thinking and doing.</p>
<p>We are part of <a href="//harc.ycr.org">HARC</a> at <a href="//ycr.org">Y Combinator Research</a>.</p>
<h2 id="people">People</h2>
<ul>
<li><a href="//harc.ycr.org/member/alex_warth/">Alex Warth (PI)</a></li>
<li><a href="//harc.ycr.org/member/jonathan_edwards/">Jonathan Edwards</a></li>
<li><a href="//harc.ycr.org/member/kat_galas/">Kat Galas</a></li>
<li><a href="//harc.ycr.org/member/marko_roeder/">Marko Röder</a></li>
<li><a href="//harc.ycr.org/member/patrick_dubroy/">Patrick Dubroy</a></li>
<li><a href="//harc.ycr.org/member/saketh_kasibatla/">Saketh Kasibatla</a></li>
<li><a href="//harc.ycr.org/member/sean_mcdirmid/">Sean McDirmid</a></li>
</ul>
<h2 id="projects">Projects</h2>
<h3 id="ohm">Ohm</h3>
<video class="block light-bg-protect" width="640" preload="none" controls
poster="./media/ohm-editor.poster.jpg">
<source src="./media/ohm-editor.mp4" type="video/mp4">
</video>
<p><a href="https://github.com/harc/ohm">Ohm</a> is a parser generator and toolkit for quickly building parsers, compilers, and interpreters for new programming languages. Unlike many similar tools, Ohm is strongly focused on the developer experience. It has been used in several Flex research projects (<a href="#chorus">Chorus</a>, <a href="#seymour">Seymour</a>, MUD, Konnakkol) and has been taught in programming language courses at UCLA and <a href="http://cs.lmu.edu/~ray/classes/cc/">Loyola Marymount University</a>.</p>
<p>The <a href="https://ohmlang.github.io/editor">Ohm Editor</a> is a live programming environment for authoring Ohm grammars in the browser. Its central feature is a novel visualization that shows every step of the parsing process, helping the user understand how a given input was parsed (or why it failed).</p>
<h4 id="publications">Publications</h4>
<ul>
<li><a href="https://ohmlang.github.io/pubs/dls2016/modular-semantic-actions.pdf">Modular Semantic Actions</a> <span class="item-info">DLS’16</span></li>
<li><a href="https://ohmlang.github.io/pubs/live2016/">Language Hacking in a Live Programming Environment</a> <span class="item-info">LIVE’16</span></li>
</ul>
<p class="dinkus"></p>
<h3 id="seymour">Seymour</h3>
<video class="block light-bg-protect" width="640" preload="none" controls
poster="./media/seymour.poster.png">
<source src="./media/seymour.mp4" type="video/mp4">
</video>
<p>Seymour is a new programming language and environment that enables programmers to better see and understand the execution of their programs. We are creating an introductory programming course around this tool, and expect that it will help students build a deeper understanding of programming and develop powerful ways of thinking about computation.</p>
<p class="dinkus"></p>
<h3 id="chorus">Chorus</h3>
<p><img src="./images/chorus.png" width="640" class="block light-bg-protect"></p>
<p>The <a href="http://chorus-home.org">Chorus project</a> is exploring the middle ground between spreadsheets and programming. Current programming technology demands great expertise, discouraging the creation of a vast range of simple software applications. It need not be so. We take hope from pre-internet products like VisualBasic and HyperCard that brought programming to many non-experts. We want to pick up where those forerunners left off and make modern internet application programming almost as easy as using a spreadsheet. To achieve that goal we are willing to sacrifice power, compatibility, performance, and even the sacred traditions of programming culture. We are focusing first on mobile social apps: simple cloud applications running on phones that organize groups, for example a book club, a soccer league, or an office workflow. Our modest strategy is to develop a product with unique value to non-programmers that is a viral vector for a dramatically simplified programming experience.</p>
<h4 id="publications-talks">Publications & Talks</h4>
<ul>
<li><a href="https://www.youtube.com/watch?v=XBpwysZtkkQ">End-User Programming of Social Apps</a> <span class="pill">video</span><span class="item-info">YOW! 2015</span></li>
<li><a href="https://ohmlang.github.io/pubs/dls2016/modular-semantic-actions.pdf">Live End-User Programming: A Demo/Manifesto</a> <span class="item-info">DLS’16</span></li>
</ul>
<p class="dinkus"></p>
<h3 id="purple">Purple</h3>
<video class="block light-bg-protect" width="640" preload="none" controls
poster="./media/purple-teaser.poster.jpg">
<source src="./media/purple-teaser.mp4" type="video/mp4">
</video>
<p>Purple is a programmable visual environment for exploring ideas and thinking out loud. It provides two ways of viewing and manipulating a common model: a direct-manipulation canvas on the left, and a code editor on the right. The two sides support and complement each other, allowing the user to fluidly combine a concrete, visual approach with symbolic and abstract reasoning.</p>
<p>Unlike most programming environments, the goal of Purple is not to produce programs. Rather, it is an <em>inquiring material</em>: a medium that serves a cognitive purpose in exploring an idea or solving a problem. It is a vehicle for what John Dewey called “experimental doing for the sake of knowing” – much more like a whiteboard or a designer’s sketchbook than a conventional programming tool.</p>
<p class="dinkus"></p>
<h3 id="trainee">Trainee</h3>
<p><img src="./images/trainee.png" width="640" class="block light-bg-protect"></p>
<p>Trainee is a tool to explore problem scenarios and help decision making. When exploring a (new) problem space, there may be many decisions to make and many options to consider. A lot of the time, good choices can only be assessed after the fact and after seeing the whole picture (“I know it when I see it”). This exploration of and familiarization with the problem can easily lead to dead ends and re-evaluations. Trainee therefore supports decision tracking and exploring multiple scenarios to guide users in their decisions.</p>
</div>
<div id="footer">
<hr>
<p style="margin-bottom: 0">©2017 <a href="//ycr.org"> Y Combinator Research</p>
</div>
</body>
</html>