Skip to content

Commit b3e15e1

Browse files
eahansonsax
andcommitted
Add "recent work" page and tweak spacing
Co-Authored-By: Eric Saxby <77073+sax@users.noreply.github.com>
1 parent cc897fd commit b3e15e1

File tree

4 files changed

+234
-144
lines changed

4 files changed

+234
-144
lines changed

about.html

+110-99
Original file line numberDiff line numberDiff line change
@@ -14,104 +14,115 @@ <h1>About Us</h1>
1414
</header>
1515

1616
<main>
17-
<h2>Elixir</h2>
18-
19-
<p>
20-
We have been building applications in Elixir since 2018, and have deployed over a dozen
21-
Elixir applications in that time. We have also published and maintain
22-
<a href="https://github.com/synchronal" target="_blank">many open source libraries</a>.
23-
</p>
24-
25-
<p>
26-
We have decades of test-driven development experience, which we have brought to Elixir
27-
in terms of building full Phoenix LiveView UI tests (that run in seconds), as well as open source
28-
libraries such as <a href="https://hex.pm/packages/pages" target="_blank">Pages</a> and
29-
<a href="https://hex.pm/packages/html_query" target="_blank">HtmlQuery</a>.
30-
</p>
31-
32-
<p>
33-
We have not only built UI-heavy applications, but also built multiple data processing
34-
applications. We have experience using libraries such as Broadway, GenStage, Flow, Membrane,
35-
and Oban, as well as high-volume and high-speed data processing applications using tools
36-
provided by the Erlang and Elixir standard libraries.
37-
</p>
38-
39-
<p>
40-
In these data pipelines, we have faced problems related to strict concurrency constraints,
41-
API interoperability with little, no, or incorrect documentation, and with the need for
42-
high reliability and high speed (for instance, reducing a 12-hour long process to under 2 minutes).
43-
</p>
44-
45-
<ul>
46-
<li>CSV imports and exports</li>
47-
<li>Excel imports and exports</li>
48-
<li>XML parsing and generation</li>
49-
<li>Event sourcing of high-volume data pipelines</li>
50-
<li>Streaming data</li>
51-
</ul>
52-
53-
<h2>Rust</h2>
54-
55-
<p>
56-
We have built CLIs and terminal UIs in Rust, that we and teams we've work with use every day.
57-
We have also used Rust at the core of Elixir NIFs for high speed data processing, as well as
58-
for interoperability with
59-
<a href="https://github.com/synchronal/specter" target="_blank">Rust libraries such as webrtc-rs</a>.
60-
</p>
61-
62-
<p>
63-
Our experience has focused on using Elixir as a main orchestrator for server operations, but
64-
we'd love to work more with Rust in terms of implementing core application logic shareable
65-
between multiple languages, such as Elixir and Swift.
66-
</p>
67-
68-
<ul>
69-
<li>CLIs</li>
70-
<li>TUIs</li>
71-
<li>Language interoperablity</li>
72-
</ul>
73-
74-
<h2>Developer workflow and tooling</h2>
75-
76-
<p>
77-
We care a lot about developer workflow, and believe that team members should be able to
78-
onboard onto new projects within minutes. New hires should be able to ship code on their
79-
first day, with a safety harness of tooling to ensure they are able to do so confidently
80-
while reducing annoyances.
81-
</p>
82-
83-
<ul>
84-
<li><a href="https://github.com/synchronal/dyd" target="_blank">Daily Diff</a></li>
85-
<li><a href="https://github.com/synchronal/medic-rs" target="_blank">Medic</a></li>
86-
<li><a href="https://github.com/synchronal/medic-ex" target="_blank">Elixir Medic</a></li>
87-
</ul>
88-
89-
<h2>Open source</h2>
90-
91-
<p>
92-
We care a lot about open source. We use open source as a part of every day that we spend
93-
programming, whether it's the languages and frameworks that we use, or libraries that we
94-
integrate into our applications.
95-
</p>
96-
97-
<p>
98-
As a part of developing applications for ourselves, we build and extract libraries to
99-
release code that other people might find useful. We do this under the name
100-
<a href="https://github.com/synchronal" target="_blank">Synchronal</a>, to keep them
101-
separate from any intellectual property owned by any for-profit entity. In the long term
102-
we hope to expand that organization into a larger co-operative of human-centric developers.
103-
</p>
104-
105-
<p>
106-
Code that we build for our clients may be proprietary, but if possible we would love to
107-
release and maintain open source libraries for the parts that are not.
108-
</p>
109-
110-
<h2>Want to talk about working together?</h2>
111-
112-
<p>
113-
Email us at <a href="mailto:contact@reflective.dev">contact@reflective.dev</a>.
114-
</p>
17+
<section>
18+
<h2>Elixir</h2>
19+
20+
<p>
21+
We have been building applications in Elixir since 2018, and have deployed over a dozen
22+
Elixir applications in that time. We have also published and maintain
23+
<a href="https://github.com/synchronal" target="_blank">many open source libraries</a>.
24+
</p>
25+
26+
<p>
27+
We have decades of test-driven development experience, which we have brought to Elixir
28+
in terms of building full Phoenix LiveView UI tests (that run in seconds), as well as open source
29+
libraries such as <a href="https://hex.pm/packages/pages" target="_blank">Pages</a> and
30+
<a href="https://hex.pm/packages/html_query" target="_blank">HtmlQuery</a>.
31+
</p>
32+
33+
<p>
34+
We have not only built UI-heavy applications, but also built multiple data processing
35+
applications. We have experience using libraries such as Broadway, GenStage, Flow, Membrane,
36+
and Oban, as well as high-volume and high-speed data processing applications using tools
37+
provided by the Erlang and Elixir standard libraries.
38+
</p>
39+
40+
<p>
41+
In these data pipelines, we have faced problems related to strict concurrency constraints,
42+
API interoperability with little, no, or incorrect documentation, and with the need for
43+
high reliability and high speed (for instance, reducing a 12-hour long process to under 2 minutes).
44+
</p>
45+
46+
<ul>
47+
<li>CSV imports and exports</li>
48+
<li>Excel imports and exports</li>
49+
<li>XML parsing and generation</li>
50+
<li>Event sourcing of high-volume data pipelines</li>
51+
<li>Streaming data</li>
52+
</ul>
53+
</section>
54+
55+
<section>
56+
<h2>Rust</h2>
57+
58+
<p>
59+
We have built CLIs and terminal UIs in Rust, that we and teams we've work with use every day.
60+
We have also used Rust at the core of Elixir NIFs for high speed data processing, as well as
61+
for interoperability with
62+
<a href="https://github.com/synchronal/specter" target="_blank">Rust libraries such as webrtc-rs</a>.
63+
</p>
64+
65+
<p>
66+
Our experience has focused on using Elixir as a main orchestrator for server operations, but
67+
we'd love to work more with Rust in terms of implementing core application logic shareable
68+
between multiple languages, such as Elixir and Swift.
69+
</p>
70+
71+
<ul>
72+
<li>CLIs</li>
73+
<li>TUIs</li>
74+
<li>Language interoperablity</li>
75+
</ul>
76+
</section>
77+
78+
<section>
79+
<h2>Developer workflow and tooling</h2>
80+
81+
<p>
82+
We care a lot about developer workflow, and believe that team members should be able to
83+
onboard onto new projects within minutes. New hires should be able to ship code on their
84+
first day, with a safety harness of tooling to ensure they are able to do so confidently
85+
while reducing annoyances.
86+
</p>
87+
88+
<ul>
89+
<li><a href="https://github.com/synchronal/dyd" target="_blank">Daily Diff</a></li>
90+
<li><a href="https://github.com/synchronal/medic-rs" target="_blank">Medic</a></li>
91+
<li><a href="https://github.com/synchronal/medic-ex" target="_blank">Elixir Medic</a></li>
92+
</ul>
93+
</section>
94+
95+
<section>
96+
<h2>Open source</h2>
97+
98+
<p>
99+
We care a lot about open source. We use open source as a part of every day that we spend
100+
programming, whether it's the languages and frameworks that we use, or libraries that we
101+
integrate into our applications.
102+
</p>
103+
104+
<p>
105+
As a part of developing applications for ourselves, we build and extract libraries to
106+
release code that other people might find useful. We do this under the name
107+
<a href="https://github.com/synchronal" target="_blank">Synchronal</a>, to keep them
108+
separate from any intellectual property owned by any for-profit entity. In the long term
109+
we hope to expand that organization into a larger co-operative of human-centric developers.
110+
</p>
111+
112+
<p>
113+
Code that we build for our clients may be proprietary, but if possible we would love to
114+
release and maintain open source libraries for the parts that are not.
115+
</p>
116+
117+
</section>
118+
119+
<section>
120+
<h2>Want to talk about working together?</h2>
121+
122+
<p>
123+
Email us at <a href="mailto:contact@reflective.dev">contact@reflective.dev</a>.
124+
</p>
125+
</section>
115126
</main>
116127

117128
<footer id="footer">
@@ -126,5 +137,5 @@ <h2>Want to talk about working together?</h2>
126137

127138
<script src="assets/js/main.js"></script>
128139
</body>
129-
</html>
130140

141+
</html>

assets/css/content.css

+42-44
Original file line numberDiff line numberDiff line change
@@ -341,14 +341,16 @@
341341

342342
p {
343343
display: block;
344-
margin: 0 0 1em 0;
344+
}
345+
346+
p + p {
347+
margin-top: 1em;
345348
}
346349

347350
h1, h2, h3, h4, h5, h6 {
348351
color: #fff;
349352
font-weight: 700;
350353
line-height: 1em;
351-
margin: 0 0 1em 0;
352354
}
353355

354356
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
@@ -441,6 +443,10 @@
441443

442444
/* Section/Article */
443445

446+
section + section {
447+
margin-top: 1.5em;
448+
}
449+
444450
section.special, article.special {
445451
text-align: center;
446452
}
@@ -471,10 +477,6 @@
471477
line-height: 1.5em;
472478
}
473479

474-
p + h2 {
475-
margin-top: 2em;
476-
}
477-
478480
@media screen and (max-width: 980px) {
479481

480482
header br {
@@ -507,18 +509,18 @@
507509
position: relative;
508510
}
509511

510-
.icon:before {
511-
-moz-osx-font-smoothing: grayscale;
512-
-webkit-font-smoothing: antialiased;
513-
font-family: FontAwesome;
514-
font-style: normal;
515-
font-weight: normal;
516-
text-transform: none !important;
517-
}
512+
.icon:before {
513+
-moz-osx-font-smoothing: grayscale;
514+
-webkit-font-smoothing: antialiased;
515+
font-family: FontAwesome;
516+
font-style: normal;
517+
font-weight: normal;
518+
text-transform: none !important;
519+
}
518520

519-
.icon > .label {
520-
display: none;
521-
}
521+
.icon > .label {
522+
display: none;
523+
}
522524

523525
/* List */
524526

@@ -528,42 +530,38 @@
528530
padding-left: 1.25em;
529531
}
530532

531-
ol li {
532-
padding-left: 0.25em;
533-
}
533+
ol li {
534+
padding-left: 0.25em;
535+
}
534536

535537
ul {
536538
list-style: disc;
537-
margin: 0 0 2em 0;
538-
padding-left: 1em;
539+
margin: 0.5em 0 0.5em 0;
540+
padding-inline-start: 1em;
539541
}
540542

541-
ul li {
542-
padding-left: 0.5em;
543-
}
544-
545-
ul.icons {
546-
cursor: default;
547-
list-style: none;
548-
padding-left: 0;
549-
}
543+
ul.icons {
544+
cursor: default;
545+
list-style: none;
546+
padding-left: 0;
547+
}
550548

551-
ul.icons li {
552-
display: inline-block;
553-
padding: 0 1em 0 0;
554-
}
549+
ul.icons li {
550+
display: inline-block;
551+
padding: 0 1em 0 0;
552+
}
555553

556-
ul.icons li:last-child {
557-
padding-right: 0;
558-
}
554+
ul.icons li:last-child {
555+
padding-right: 0;
556+
}
559557

560-
ul.icons li .icon:before {
561-
font-size: 1.25em;
562-
}
558+
ul.icons li .icon:before {
559+
font-size: 1.25em;
560+
}
563561

564-
ul.icons li a {
565-
color: inherit;
566-
}
562+
ul.icons li a {
563+
color: inherit;
564+
}
567565

568566
/* Form */
569567

index.html

+4-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ <h1>Reflective</h1>
1616
</p>
1717

1818
<p>
19-
<a href="about.html">Learn more about us</a> or email us at
19+
Learn more
20+
<a href="about.html">about us</a>, read about
21+
<a href="recent-work.html">our recent work</a>, or email us at
2022
<a href="mailto:contact@reflective.dev">contact@reflective.dev</a>.
2123

2224
<span class="smaller">
@@ -39,4 +41,5 @@ <h1>Reflective</h1>
3941

4042
<script src="assets/js/main.js"></script>
4143
</body>
44+
4245
</html>

0 commit comments

Comments
 (0)