Update consulting and magprog
This commit is contained in:
parent
8bc8f5348d
commit
ba883b5b11
@ -1,37 +0,0 @@
|
||||
---
|
||||
type: page
|
||||
title: Consulting
|
||||
language: en
|
||||
---
|
||||
|
||||
## We do
|
||||
|
||||
The centre provides a number of commercial services:
|
||||
* Developing analysis algorithms and platforms for various scientific and industrial application.
|
||||
* Scientific expert activity (analyzing existing software, proposing ways to improve it).
|
||||
* Architecture for scientific applications.
|
||||
* Scientific open source project development and support.
|
||||
|
||||
<hr>
|
||||
|
||||
## How our work is different
|
||||
|
||||
Scientific software is different. You can't just make it by requirements because creating requirements is a major part of the job.
|
||||
|
||||
We work together with a customer in a tight collaboration to better understand the problem and provide the best way to solve it. We do research. Our team consist not of programmers, but of scientists so when deep understanding is important, it is our work.
|
||||
|
||||
On the other hand, our team have a lot of expertise in industrial programming, so we do not do only research code in notebooks, we provide **MVP** or **product** grade development.
|
||||
|
||||
<hr>
|
||||
|
||||
## Our limitations
|
||||
|
||||
Our work is focused on research software. We do not have facilities to provide full-scale industrial development and deployment. But we have qualification and desire to work with technical specialists inside companies to integrate our research expertise with company industrial capabilities.
|
||||
|
||||
<hr>
|
||||
|
||||
## How to start?
|
||||
|
||||
Please contact us via email below. We will discuss your problem for free and tell you if we can do it and how much will it cost. Since we do research, each task needs individual approach and estimation. We provide discounts for open research and open source software development.
|
||||
|
||||
email: <a href="mailto:research@sciprog.center">research@sciprog.center</a>
|
16
data/home/content/consulting/development.md
Normal file
16
data/home/content/consulting/development.md
Normal file
@ -0,0 +1,16 @@
|
||||
---
|
||||
type: page
|
||||
title: Development
|
||||
language: en
|
||||
---
|
||||
|
||||
## Infrastructure for NICA project
|
||||
|
||||
Together with [mipt-npm](https://npm.mipt.ru) laboratory we are working on developing infrastructure services for [NICA](https://nica.jinr.ru/) project. Those services include:
|
||||
* Web-based data visualization.
|
||||
* Web services for supercomputer task execution scenarios.
|
||||
* Big data access and indexing services.
|
||||
|
||||
## Controls systems integration for [BabyIAXO](https://iaxo.desy.de/) experiment
|
||||
|
||||
Integration of different SCADA systems and development of device servers.
|
14
data/home/content/consulting/expert.md
Normal file
14
data/home/content/consulting/expert.md
Normal file
@ -0,0 +1,14 @@
|
||||
---
|
||||
type: page
|
||||
title: Expert activity
|
||||
language: en
|
||||
---
|
||||
|
||||
## Software design consultations for Tavrida Electric
|
||||
|
||||
Design of SCADA system, asynchronous message passing and consultation on Kotlin language.
|
||||
|
||||
|
||||
## Library and framework design for SkolTech
|
||||
|
||||
Design of libraries and frameworks for applied research (machine learning).
|
73
data/home/content/consulting/index.md
Normal file
73
data/home/content/consulting/index.md
Normal file
@ -0,0 +1,73 @@
|
||||
---
|
||||
type: page
|
||||
title: Consulting
|
||||
language: en
|
||||
---
|
||||
|
||||
## Where does science begin?
|
||||
|
||||
In recent years, the rate of introduction of scientific developments into the industrial and even domestic spheres has accelerated significantly. No more waiting for many years before what was the cutting edge of science is put into practice. Such a rapid introduction also imposes its own limitations - close cooperation between scientists and industry became quite important.
|
||||
|
||||
In any industry, and especially in the science-intensive one, a clear technical requirements are of great importance. In order to do proper technical requirements one needs to have extensive knowledge. Our team includes specialists engaged in research in a variety of scientific areas - from elementary particle physics to biotechnology and computer science. This makes it easy for our experienced, highly qualified specialists to find the optimal solution even in the subject area. Regardless of the subject area, we work closely with the customer to better understand the task and its full-fledged solution.
|
||||
|
||||
Our research, which primarily includes open source projects, has already been appreciated by the international scientific community.
|
||||
|
||||
## We do
|
||||
|
||||
<section id="one" class="tiles">
|
||||
<article>
|
||||
<span class="image">
|
||||
<img src="images/pic03.jpg" alt="" />
|
||||
</span>
|
||||
<header class="major">
|
||||
<h3><a href="consulting/research" class="link">Research</a></h3>
|
||||
<p>Analytics, prototyping and research for fundamental science and industry.</p>
|
||||
</header>
|
||||
</article>
|
||||
<article>
|
||||
<span class="image">
|
||||
<img src="images/pic04.jpg" alt="" />
|
||||
</span>
|
||||
<header class="major">
|
||||
<h3><a href="consulting/expert" class="link">Expert activity</a></h3>
|
||||
<p>Analysis and improvement of existing scientific software and projects.</p>
|
||||
</header>
|
||||
</article>
|
||||
<article>
|
||||
<span class="image">
|
||||
<img src="images/pic05.jpg" alt="" />
|
||||
</span>
|
||||
<header class="major">
|
||||
<h3><a>Architecture</a></h3>
|
||||
<p>Design the architecture for scientific and technological applications.</p>
|
||||
</header>
|
||||
</article>
|
||||
<article>
|
||||
<span class="image">
|
||||
<img src="images/pic06.jpg" alt="" />
|
||||
</span>
|
||||
<header class="major">
|
||||
<h3><a href="consulting/development" class="link">Development</a></h3>
|
||||
<p>The development and support of open-source and in-house solutions( libraries, frameworks and end-user application).</p>
|
||||
</header>
|
||||
</article>
|
||||
</section>
|
||||
|
||||
<hr>
|
||||
|
||||
## How our team works
|
||||
|
||||
The primary feature of our work is research. We do not just do what customer tells us to do. We conduct a full-scale research and devise a way (algorithm, technology, etc), which would produce the best results.
|
||||
|
||||
Our team is deeply engaged in [education activity](/magprog). It allows us to invite the most promising young researchers and developers to work with us both on part-time and full-time basis and get a constant feedback on new technologies and methods. The connection to fundamental science allows to be aware of the latest technological and methodical advances.
|
||||
|
||||
Another unique feature of our work is that our team have experience both in research and industrial IT. That means that we not only produce "research code" and prototypes, but also able to provide **MVP** or even small-scale **product** development.
|
||||
|
||||
<hr>
|
||||
|
||||
|
||||
## How to start?
|
||||
|
||||
Please contact us via email below. We will discuss your problem for free and tell you if we can do it and how much will it cost. Since we do research, each task needs individual approach and estimation. We provide discounts for open research and open source software development.
|
||||
|
||||
email: <a href="mailto:research@sciprog.center">research@sciprog.center</a>
|
13
data/home/content/consulting/research.md
Normal file
13
data/home/content/consulting/research.md
Normal file
@ -0,0 +1,13 @@
|
||||
---
|
||||
type: page
|
||||
title: Research
|
||||
language: en
|
||||
---
|
||||
|
||||
## Analysis of oil wells monitoring data for Aramco Innovations
|
||||
|
||||
Classical analysis of temperature data from simulation and real-life measurements. Full-cycle research from technical requirements and scientific overview to software integration.
|
||||
|
||||
## Public and fundamental research
|
||||
|
||||
See more at [research page](/research).
|
@ -7,7 +7,7 @@ language: ru
|
||||
Чтобы принять участие в программе, необходимо:
|
||||
* заполнить **[анкету](https://docs.google.com/forms/d/e/1FAIpQLSf9w0zxHY90zI5Mze5XRKHLO7gxa__bro8PDC2PlwsPfcMkfw/viewform?usp=sf_link)**. В анкете надо указать одного или нескольких научных руководителей, с которыми вы бы хотели работать;
|
||||
* **до 30 июня** пройти собеседование с научными руководителями и согласовать предполагаемый план обучения;
|
||||
* подать документы в магистратуру МФТИ согласно [правилам поступления](https://pk.mipt.ru/master/) (направление **ЛФИ "Математика и физика"** или **ФПМИ "Информатика"**). Если есть соглашение с научным руководителем, но не удалось пройти по конкурсу, то обучение с большой вероятностью будет оплачено нашими партнерами.
|
||||
* подать документы в магистратуру МФТИ согласно [правилам поступления](https://pk.mipt.ru/master/) (направление **ЛФИ "Прикладная математика и физика"**, **ЛФИ "Ядерная физика и технологии"** или **ФПМИ "Информатика и вычислительная техника"**). Если есть соглашение с научным руководителем, но не удалось пройти по конкурсу, то обучение с большой вероятностью будет оплачено нашими партнерами.
|
||||
|
||||
<span class="badge badge-danger">ВАЖНО:</span> предварительное согласование с научным руководителем является **обязательным** для обучения в вузе.
|
||||
|
||||
|
@ -5,6 +5,9 @@ section_title: О программе
|
||||
language: ru
|
||||
---
|
||||
|
||||
<iframe width="100%" height="315" src="https://www.youtube.com/embed/pniPs5ne294" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||
|
||||
|
||||
Магистерская программа МФТИ **"Научное программное обеспечение"** (старое название: **"Разработка и применение программного обеспечения в физических исследованиях"**) создана при поддержке двух школ МФТИ: Физтех-школы физики и исследований им. Ландау ([ЛФИ](https://mipt.ru/education/departments/lpr/)), Физтех-школы прикладной математики и информатики ([ФПМИ](https://mipt.ru/education/departments/fpmi/)) а также ряда академических и промышленных партнеров. В ее основе лежит взаимодействие студента и [научного руководителя](#mentors).
|
||||
|
||||
Цель создания программы — объединение усилий ученых и программистов для разработки лучших компьютерных решений и применения этих решений в области фундаментальной и прикладной науки и инженерии.
|
||||
|
@ -349,6 +349,14 @@ internal fun Application.spcMaster(context: Context, dataPath: Path, prefix: Str
|
||||
div("inner") {
|
||||
nav {
|
||||
ul {
|
||||
li {
|
||||
a(href = "/"){
|
||||
i("fa fa-home") {
|
||||
attributes["aria-hidden"] = "true"
|
||||
}
|
||||
+"SPC"
|
||||
}
|
||||
}
|
||||
sections.forEach { section ->
|
||||
li {
|
||||
a(href = "#${section.id}") {
|
||||
|
@ -11,11 +11,12 @@ import io.ktor.server.routing.*
|
||||
import kotlinx.html.*
|
||||
import space.kscience.dataforge.context.Context
|
||||
import space.kscience.dataforge.context.fetch
|
||||
import space.kscience.dataforge.data.filterByType
|
||||
import space.kscience.dataforge.data.forEach
|
||||
import space.kscience.dataforge.meta.Meta
|
||||
import space.kscience.dataforge.meta.get
|
||||
import space.kscience.dataforge.meta.string
|
||||
import space.kscience.dataforge.names.Name
|
||||
import space.kscience.dataforge.names.parseAsName
|
||||
import space.kscience.dataforge.names.*
|
||||
import space.kscience.dataforge.values.string
|
||||
import space.kscience.snark.*
|
||||
import java.nio.file.Path
|
||||
@ -71,7 +72,7 @@ context(PageContext) internal fun Route.spcPage(subRoute: String, meta: Meta, fr
|
||||
|
||||
context(PageContext) internal fun Route.spcPage(
|
||||
subRoute: String,
|
||||
dataPath: Name = subRoute.replace("/",".").parseAsName(),
|
||||
dataPath: Name = subRoute.replace("/", ".").parseAsName(),
|
||||
more: FlowContent.() -> Unit = {},
|
||||
) {
|
||||
val data = resolveHtml(dataPath)
|
||||
@ -83,7 +84,26 @@ context(PageContext) internal fun Route.spcPage(
|
||||
} else {
|
||||
application.log.error("Content for page with path $dataPath not found")
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Route a directory
|
||||
*/
|
||||
context(PageContext) internal fun Route.spcDirectory(
|
||||
subRoute: String,
|
||||
dataPath: Name = subRoute.replace("/", ".").parseAsName(),
|
||||
) {
|
||||
data.filterByType<HtmlFragment> { name, _ -> name.startsWith(dataPath) }.forEach { html ->
|
||||
val pageName = if (html.name.lastOrNull()?.body == PageContext.INDEX_PAGE_NAME) {
|
||||
html.name.cutLast()
|
||||
} else {
|
||||
html.name
|
||||
}
|
||||
|
||||
spcPage(pageName.tokens.joinToString(separator = "/"), html.meta) {
|
||||
htmlData(html)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
context(PageContext) internal fun Route.spcPage(
|
||||
@ -306,11 +326,11 @@ internal fun Application.spcHome(context: Context, rootPath: Path, prefix: Strin
|
||||
}
|
||||
}
|
||||
|
||||
spcPage("consulting")
|
||||
spcDirectory("consulting")
|
||||
spcPage("ru/consulting")
|
||||
|
||||
spcSpotlight("team") { _, m -> m["type"].string == "team" }
|
||||
spcSpotlight("research") { _, m -> m["type"].string == "project" }
|
||||
spcSpotlight("research") { name, m -> name.startsWith("projects".asName()) && m["type"].string == "project" }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -11,11 +11,17 @@ import space.kscience.dataforge.meta.Meta
|
||||
import space.kscience.dataforge.meta.get
|
||||
import space.kscience.dataforge.meta.string
|
||||
import space.kscience.dataforge.names.Name
|
||||
import space.kscience.dataforge.names.plus
|
||||
import space.kscience.dataforge.names.startsWith
|
||||
import space.kscience.snark.PageContext.Companion.INDEX_PAGE_NAME
|
||||
import java.nio.file.Path
|
||||
|
||||
data class PageContext(val path: String, val pageMeta: Meta, val data: DataSet<*>) {
|
||||
val language: String? by pageMeta.string()
|
||||
|
||||
companion object {
|
||||
const val INDEX_PAGE_NAME: String = "index"
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@ -23,13 +29,17 @@ data class PageContext(val path: String, val pageMeta: Meta, val data: DataSet<*
|
||||
*/
|
||||
fun PageContext.resolveRef(name: String): String = "${path.removeSuffix("/")}/$name"
|
||||
|
||||
fun PageContext.resolveRef(name: Name): String = "${path.removeSuffix("/")}/${name.tokens.joinToString ("/")}"
|
||||
fun PageContext.resolveRef(name: Name): String = "${path.removeSuffix("/")}/${name.tokens.joinToString("/")}"
|
||||
|
||||
/**
|
||||
* Resolve a Html builder by its full name
|
||||
*/
|
||||
fun PageContext.resolveHtml(name: Name): HtmlData? = data.getByType<HtmlFragment>(name)?.takeIf {
|
||||
it.published //TODO add language confirmation
|
||||
fun PageContext.resolveHtml(name: Name): HtmlData? {
|
||||
val resolved = (data.getByType<HtmlFragment>(name) ?: data.getByType<HtmlFragment>(name + INDEX_PAGE_NAME))
|
||||
|
||||
return resolved?.takeIf {
|
||||
it.published //TODO add language confirmation
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user