docs(corp/website): update website content

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
This commit is contained in:
Vincent Ambo 2023-01-27 15:37:20 +03:00 committed by tazjin
parent e3c2b3650a
commit b1e4d66f83
4 changed files with 223 additions and 42 deletions

View file

@ -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

View file

@ -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/

View file

@ -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

View file

@ -7,16 +7,15 @@ let
"@context" = "https://schema.org"; "@context" = "https://schema.org";
"@type" = "Organisation"; "@type" = "Organisation";
url = "https://tvl.su"; 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;
extraFooter = "\n|\n © ООО ТВЛ";
# TODO(tazjin): The `.tvl-logo` thing can probably go in the shared CSS. common = description: {
extraFooter = "\n|\n © ООО ТВЛ";
staticUrl = "https://static.tvl.su/latest";
extraHead = '' 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"> <script type="application/ld+json">
${builtins.toJSON structuredData} ${builtins.toJSON structuredData}
</script> </script>
@ -27,11 +26,34 @@ let
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
} }
.active-lang {
color: black;
font-weight: bold;
}
.inactive-lang {
color: inherit;
}
</style> </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 in
pkgs.runCommand "corp-website" { } '' pkgs.runCommand "corp-website" { } ''
mkdir $out mkdir -p $out/{en,ru}
cp ${index} $out/index.html cp ${indexEn} $out/index.html
cp ${indexEn} $out/en/index.html
cp ${indexRu} $out/ru/index.html
'' ''