about summary refs log tree commit diff
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2023-01-27T12·37+0300
committertazjin <tazjin@tvl.su>2023-01-29T10·48+0000
commitb1e4d66f8330223515275888d0dc056259250a34 (patch)
treeafda298f5b7f29e362b708495fd20114b18851bd
parente3c2b3650aff8fbd4a5109cdb3406d92e9806d08 (diff)
docs(corp/website): update website content r/5774
Adds a multi-lingual version of the page, with the standard English
page being served at `/` and `/en`, and the new Russian version at
`/ru`.

Change-Id: I54ceea91d1442ee7b8717b59083e5d07c36ca8b0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7940
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
-rw-r--r--corp/website/content-en.md94
-rw-r--r--corp/website/content-ru.md98
-rw-r--r--corp/website/content.md33
-rw-r--r--corp/website/default.nix38
4 files changed, 222 insertions, 41 deletions
diff --git a/corp/website/content-en.md b/corp/website/content-en.md
new file mode 100644
index 0000000000..e3334fb8c5
--- /dev/null
+++ b/corp/website/content-en.md
@@ -0,0 +1,94 @@
+<p class="lang-links" style="text-align: right;">
+    <a href="/ru">ru</a> | <span class="active-lang">en</span>
+</p>
+<img class="tvl-logo" src="https://static.tvl.su/latest/logo-animated.svg"
+     alt="Virus with lambda-shaped spike proteins sitting on an armchair">
+
+----------------
+
+Welcome to the corporate face of [**TVL**][tvl]. We are a technology company
+headquartered in Moscow, working with a variety of topics:
+
+* <details><summary><b>Monorepos</b>. Effective ways for an organisation to
+  structure their internal codebase in a single repository, unify tooling across
+  languages, and reduce <a
+  href="https://en.wikipedia.org/wiki/No_Silver_Bullet#Summary">accidental
+  complexity</a> in software development.</summary>
+
+  With experience from companies like Google, Spotify and DeepMind, we help
+  organisations of different sizes to find streamlined software development
+  workflows that reduce mental load and increase code quality.
+
+  We use our own monorepo solutions in our internal software development flows,
+  and all of this is visible in our [public monorepo][depot].
+  </details>
+* <details><summary><b>Nix</b>. We believe that functional and declarative
+  computer systems are a massive and as-of-yet underrated step forward for
+  computing, and that Nix is the most promising solution for this
+  purpose.</summary>
+
+  Nix allows companies to significantly improve in areas such as:
+
+  1. Unification of development and production environments, leading to fewer
+     surprises when deploying an application.
+
+  2. Tailoring their stack to their use-case. Avoid the complexity of running
+     something like Kubernetes while you are scaling up, but *also* avoid the
+     complexity of rewriting your infrastructure stack once you need it.
+
+  3. Unified developer tooling across different programming languages, without
+     the overhead of using something like Bazel.
+
+  Its radically new model can bring many other advantages which depend
+  on the exact use-cases.
+  </details>
+
+* **Software development**. We offer a wide range of software development
+  services. Whether you need existence with existing projects, or want to create
+  a new solution from scratch, we can help. We specialize in helping
+  organizations avoid the trap of building overly complex systems that don't
+  meet their needs.
+
+* **Site Reliability Engineering (SRE)**. We can help with many infrastructure
+  concerns, such as deployment, scaling, monitoring, troubleshooting analysing
+  failure points in existing solutions. We offer this for any Linux-based
+  technology stack.
+
+--------------
+
+We support open-source software development, and prefer to work on our projects
+in the open. Some of our projects are:
+
+* The public TVL [monorepo][depot], the **depot**, is a demonstration of the
+  monorepo tooling we have been working on for the last couple of years.
+
+  It contains many open-source projects, work by lots of international
+  open-source contributors, and all public code of the company.
+
+* [**Tvix**][tvix], a new implementation of Nix that is fully compatible with
+  existing Nix code. Architectural differences between Nix and Tvix allow us to
+  develop tooling that is better tailored to collaborative software development,
+  and to develop domestic, high-quality solutions for CI/CD.
+
+  We run a demonstration of some parts of Tvix online as [tvixbolt].
+
+* [**Nixery**][nixery] is a service that lets users easily build and deploy
+  ad-hoc container images from their software build definitions.
+
+* Out of personal interest, we also develop free tools that help with learning
+  the Russian language, such as [**Предложник**][predlozhnik].
+
+--------------
+
+Reach out to us at **contact@tvl.su** if you are interested in working with us.
+
+TVL originated as an international community of software developers that wanted
+to socialise and collaborate on projects. Many people from all over the world
+contribute to our open-source software projects. Check out the [TVL community
+website][tvl] for more information.
+
+[tvl]: https://tvl.fyi
+[tvix]: https://tvl.fyi/blog/rewriting-nix
+[nixery]: https://nixery.dev
+[predlozhnik]: https://predlozhnik.ru/
+[depot]: https://cs.tvl.fyi/depot
diff --git a/corp/website/content-ru.md b/corp/website/content-ru.md
new file mode 100644
index 0000000000..f61d3c6bf9
--- /dev/null
+++ b/corp/website/content-ru.md
@@ -0,0 +1,98 @@
+<p class="lang-links" style="text-align: right;">
+    <span class="active-lang">ru</span> | <a href="/en">en</a>
+</p>
+<img class="tvl-logo" src="https://static.tvl.su/latest/logo-animated.svg"
+     alt="Вирус со спайк-белками в форме лямбды, сидящий на диване">
+
+----------------
+
+Добро пожаловать на официальный сайт ТВЛ. Мы - технологическая компания в
+Москве, занимающаяся следующими направлениями:
+
+* <details><summary><b>Монорепозитории</b>. Набор эффективных способов по
+  структурированию внутренней кодовой базы в едином репозитории, унификации
+  инструментов разработки между различными языками, а также снижения <a
+  href="https://ru.wikipedia.org/wiki/%D0%A1%D0%B5%D1%80%D0%B5%D0%B1%D1%80%D1%8F%D0%BD%D0%BE%D0%B9_%D0%BF%D1%83%D0%BB%D0%B8_%D0%BD%D0%B5%D1%82#%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5">побочныx
+  сложностей</a> в разработке ПО.</summary>
+
+  Наш опыт работы с такими компаниями, как Google, Spotify и DeepMind, позволяет
+  нам помочь организациям любого размера оптимизировать процессы разработки ПО,
+  уменьшить нагрузку на разработчиков и улучшить качество кода.
+
+  Мы используем собственные монорепо-решения во внутренних процессах разработки
+  ПО. Всё это можно увидеть в нашем [публичном монорепозитории][depot].
+  </details>
+* <details><summary><b>Nix</b>. Мы считаем, что функциональные и декларативные
+  компьютерные системы являются важным и пока ещё недооцененным подходом к
+  вычислениям, и <a href="https://nixos.org">Nix</a> является наиболее
+  перспективным решением в этом направлении.</summary>
+
+  Nix позволяет компаниям значительно улучшить следующие области:
+
+  1. Унификация сред разработки и производства, что приводит к меньшему
+     количеству сюрпризов при развертывании приложения.
+
+  2. Настройка стека компании под конкретные задачи. Избегайте сложности
+     инструментов вроде Kubernetes при масштабировании, но также избегайте
+     изменения всей инфраструктуры по малейшей необходимости.
+
+  3. Единый набор инструментов разработки для различных языков программирования,
+     без сложностей, связанных с использованием Bazel и подобных.
+
+  Nix прелагает радикально новую модель, которая может принести множество
+  преимуществ для каждого способа использования.
+  </details>
+
+* **Разработка программного обеспечения**. Мы предлагаем широкий спектр услуг по
+  разработке ПО. Вне зависимости от того, нуждаетесь вы в поддержке существующих
+  проектов или хотите создать новое решение с нуля, мы можем вам помочь. Наша
+  задача - помочь компаниям избежать ловушки излишне сложных систем, которые не
+  соответствуют их потребностям.
+
+* **Site Reliability Engineering (SRE)**. Мы можем помочь с множеством
+  инфраструктурных проблем, таких как развертывание, масштабирование,
+  мониторинг, анализ и устранение неполадок в существующих решениях. Мы
+  работаем с любыми технологическими стеками на базе Linux.
+
+--------------
+
+Мы поддерживаем разработку программного обеспечения с открытым исходным кодом и
+предпочитаем работать над нашими проектами в открытом доступе. Некоторые из
+наших проектов:
+
+* Публичный репозиторий ТВЛ, [**depot**][depot], является демонстрацией
+  инструментов монорепо, над которыми мы работаем в течение последних нескольких
+  лет.
+
+  В нем содержится множество проектов c открытым исходным кодом, результат
+  работы разработчиков из разных стран, а также весь публичный код компании.
+
+* [**Tvix**][tvix] - это новая реализация Nix, которая полностью совместима с
+  существующим кодом Nix. Архитектурные различия между Nix и Tvix позволяют нам
+  разрабатывать инструменты, которые лучше подходят для совместной разработки
+  программного обеспечения, и разрабатывать отечественные качественные решения
+  для CI/CD.
+
+  Мы запускаем демонстрацию некоторых компонентов Tvix онлайн: [tvixbolt][].
+
+* [Nixery][nixery] - это сервис, который позволяет пользователям с легкостью
+  создавать и развёртывать образы контейнеров напрямую из их инструкций сборки
+  софта.
+
+* Из личных интересов, мы также разрабатываем бесплатные инструменты, которые
+  помогают в изучении русского языка, такие как [**Предложник**][predlozhnik].
+
+Свяжитесь с нами по адресу **contact@tvl.su**, если вы заинтересованы в
+сотрудничестве с нами.
+
+ТВЛ возникла как международное сообщество программистов для общения и совместной
+работы над проектами. Люди из разных стран вносят свой вклад в наши открытые
+проекты по разработке программного обеспечения. Посетите [веб-сайт сообщества
+TVL][tvl], чтобы узнать больше.
+
+[tvl]: https://tvl.fyi
+[tvix]: https://tvl.fyi/blog/rewriting-nix
+[nixery]: https://nixery.dev
+[predlozhnik]: https://predlozhnik.ru/
+[depot]: https://cs.tvl.fyi/depot
+[tvixbolt]: https://tvixbolt.tvl.su/
diff --git a/corp/website/content.md b/corp/website/content.md
deleted file mode 100644
index 8582bb3a4e..0000000000
--- a/corp/website/content.md
+++ /dev/null
@@ -1,33 +0,0 @@
-The Virus Lounge
-================
-
-----------------
-
-<img class="tvl-logo" src="https://static.tvl.su/latest/logo-animated.svg"
-     alt="Virus with lambda-shaped spike proteins sitting on an armchair">
-
-Welcome to the corporate face of [The Virus Lounge][tvl-fyi].
-
-We provide technology consulting around a variety of topics, for
-example:
-
-* Advice and setup of organisation-wide monorepos for effective
-  developer workflows, including associated tooling like CI/CD
-* Assistance with anything related to Nix/NixOS
-* Software development in various languages (Rust, Common Lisp,
-  Erlang, Java and more)
-
-We also provide some services on this page:
-
-* [tvixbolt][], a web-frontend for the [Tvix][] evaluator
-* ... and other services listed on the community homepage
-
-We might be able to help you with other things on request.
-
-Note: We are still in the process of getting started and have limited
-capacity at the moment. If you would like our help, please reach out
-at **contact {at} tvl.su** for a discussion.
-
-[tvl-fyi]: https://tvl.fyi
-[Tvix]: https://cs.tvl.fyi/depot/-/tree/tvix
-[tvixbolt]: https://tvixbolt.tvl.su
diff --git a/corp/website/default.nix b/corp/website/default.nix
index f226c19f74..a8ac132cb2 100644
--- a/corp/website/default.nix
+++ b/corp/website/default.nix
@@ -7,16 +7,15 @@ let
     "@context" = "https://schema.org";
     "@type" = "Organisation";
     url = "https://tvl.su";
-    logo = "https://static.tvl.fyi/${depot.web.static.drvHash}/logo-animated.svg";
+    logo = "https://static.tvl.fyi/latest/logo-animated.svg";
   };
-  index = depot.web.tvl.template {
-    title = "TVL (The Virus Lounge) - Software consulting";
-    content = builtins.readFile ./content.md;
+
+  common = description: {
     extraFooter = "\n|\n © ООО ТВЛ";
+    staticUrl = "https://static.tvl.su/latest";
 
-    # TODO(tazjin): The `.tvl-logo` thing can probably go in the shared CSS.
     extraHead = ''
-      <meta name="description" content="TVL provides technology consulting for monorepos, Nix, and other SRE/DevOps/Software Engineering topics.">
+      <meta name="description" content="${description}">
       <script type="application/ld+json">
         ${builtins.toJSON structuredData}
       </script>
@@ -27,11 +26,34 @@ let
           margin-left: auto;
           margin-right: auto;
         }
+
+        .active-lang {
+          color: black;
+          font-weight: bold;
+        }
+
+        .inactive-lang {
+          color: inherit;
+        }
       </style>
     '';
   };
+
+  descEn = "TVL provides technology consulting for monorepos, Nix, and other SRE/DevOps/Software Engineering topics.";
+  indexEn = depot.web.tvl.template ({
+    title = "TVL (The Virus Lounge) - Software consulting";
+    content = builtins.readFile ./content-en.md;
+  } // common descEn);
+
+  descRu = "TVL предоставляет технологическое консультирование по монорепозиториям, Nix и другим темам SRE/DevOps/Software Engineering.";
+  indexRu = depot.web.tvl.template ({
+    title = "ТВЛ - Монорепозитории, SRE, Nix, программное обеспечение";
+    content = builtins.readFile ./content-ru.md;
+  } // common descRu);
 in
 pkgs.runCommand "corp-website" { } ''
-  mkdir $out
-  cp ${index} $out/index.html
+  mkdir -p $out/{en,ru}
+  cp ${indexEn} $out/index.html
+  cp ${indexEn} $out/en/index.html
+  cp ${indexRu} $out/ru/index.html
 ''