Desenvolvemos a teoria dos algoritmos como um projeto de código aberto

Há um problema:


  • encontraram uma maneira útil de descrever os processos de formação e transformação de algoritmos ,
  • a base teórica deste método é formada
  • a publicação de forma puramente teórica (sem explicações e exemplos) estará disponível apenas para profissionais da ciência,
  • a formação de exemplos é uma grande quantidade de trabalho que deve ser feito gradualmente,
  • não há muito tempo para lidar com esse tópico, faltam duas mãos e o equipamento disponível - até agora apenas um smartphone,
  • e o método é lindo.

preciso de muitas mãos


Sob o corte, uma tentativa de resolver o problema usando ferramentas estranhas à primeira vista: um smartphone Android , descontos , Epsilon Notes , um livro dinâmico , Termux , git , bitbucket , Habr .


Sim, os telefones modernos não são mais apenas uma conexão. Compartilho toda a minha experiência no uso desses crescentes recursos de gadgets em duas partes: antes do primeiro aplicativo escrito por mim mesmo no telefone e depois. E então ficou melhor.


Mas mesmo depois desse momento, nunca deixo de me surpreender. Essa surpresa foi o uso de um smartphone Android para resolver o problema apresentado neste artigo. De volta para ela.


A tarefa "Publicar teoria". Um livro é escrito no formato usual para isso. Publicado e aguardando seu leitor. Mas o mundo está mudando. Por que não tentar mudar esse processo familiar?


Ele começou a dividir a tarefa em subtarefas:


  1. Em primeiro lugar, escrever uma grande quantidade de texto com uma estrutura complexa requer especial. o programa. E agora existem muitos desses programas, mas, como sempre, precisamos de um programa especial.
  2. Em segundo lugar, para reservar o trabalho realizado, seria bom lançar o que foi criado no servidor. Afinal, o servidor, espero, é mais confiável do que um telefone fino.
  3. Em terceiro lugar, há a tarefa de discutir o livro com o leitor e entender quais pontos devem ser esclarecidos.
  4. Quarto, há um desejo de complementar dinamicamente o livro.

O último desejo surgiu da avaliação de suas capacidades e do entendimento de que mesmo a parte já escrita pode ser útil para muitos. E quando as partes restantes do trabalho minucioso forem concluídas, você poderá imprimir um livro.


Começamos a resolver problemas.


Remarcação (Epsilon Notes)


O requisito para um programa de edição de texto era simples. O texto deve ser publicado na Internet. E que formato nosso Habr favorito mantém? Markdown correto.


E se eu digitar o primeiro artigo de Habr no PC, onde por muito tempo não há problemas com esse formato. Então, no momento, não há PC por perto.


A descoberta foi que no Android havia programas com um conjunto completo de funcionalidades necessárias. E deixe que os autores desses programas expressem seu respeito aqui. Pela primeira vez na minha experiência, o aplicativo Android é tão útil que, sem hesitar, listei uma taxa modesta pelo trabalho do autor em troca da versão pro. Mas agora não é sobre isso.


Não necessariamente uma opção absolutamente universal, mas para quase todo mundo que me convém - este é o programa Epsilon Notes .


Com a ajuda dela, depois do trabalho à noite, comecei a digitar letras. Antes disso, ele dividiu o livro em duas partes: cálculos teóricos e explicações com exemplos de uso. A estrutura dos dois livros e o índice são os mesmos, mas o conteúdo é diferente.


Livro teórico:


imagem

Também o imprimo em pdf:


imagem

O livro é prático. Para cada capítulo, vários artigos são planejados em Habré como exemplos.


imagem

Preparação do artigo atual:


imagem

Git (Termux, bitbucket)


Para a implementação de redundância, discussão e adições, decidi usar o bitbucket. Eu tinha alguns repositórios particulares lá. Eu registrei um novo. Pela primeira vez, o Markdown foi escolhido como a linguagem de desenvolvimento.


Resta encontrar o cliente git no Android . De fato, naquele momento eu já tinha. Mas o processo de encontrar tudo a mesma coisa ocorreu, mas um pouco antes. Nesta área, aplicativos especializados do mercado do Google Play ainda não fornecem o conjunto de recursos necessário. Não é de surpreender: o cliente git é importante para todo o ambiente (com todos os seus utilitários de comando) e duplicar o comportamento de um sistema de comando tão complexo em botões e janelas não é uma tarefa fácil. Eu já estava chateado.


Mas o Android já possui ótimos emuladores de terminal e Linux. Por exemplo, Termux . E neste emulador, o cliente de comando git já está carregado perfeitamente.


imagem

Voi la , estamos reservados e sincronizados, e também, graças a Issues from bitbucket , há feedback do leitor.


Armazenamento de livros Bitbucket :


imagem

Histórico de uma mudança de livro no pdf impresso:


imagem

Feedback do leitor:


imagem

Um lugar para rascunhos e artigos publicados para Habr


imagem

Total


O conjunto de tarefas é resolvido na íntegra. Bem, apenas trabalho e tempo ajudarão a resolver o problema global.


Obrigado pela atenção.


Desculpe pelos erros de digitação, se houver. Eu chego ao PC - corrigirei erros de digitação.


Como um pequeno aperitivo para os artigos que estão planejados para escrever, darei a versão atual da introdução do livro. De repente alguém interessado.


Introdução do livro


Formulamos o propósito deste livro. E o trabalho não é apenas meu, mas também o trabalho do leitor.


O objetivo é introduzir definições baseadas em axiomas simples para os conceitos de Consciência e Vida .


Parece ambicioso, mas apenas sem um bom instrumento. Tal ferramenta seria a "Teoria Geral dos Algoritmos", já parcialmente desenvolvida no processo de redação deste livro.


A teoria ainda é fraca em termos científicos, e há poucos exemplos de seu uso prático. Sob o spoiler, existem outros conceitos iniciais, que ele citou aqui com apenas um objetivo: encontrar um interlocutor para uma discussão separada do livro, seguido pela inclusão de todos os interlocutores nos coautores. Semelhante ao desenvolvimento de projetos de software de código aberto.


Se alguém estiver interessado, ficarei feliz.


Texto oculto

A introdução da definição do algoritmo , que, sendo determinada pelo método indicado abaixo, tornou possível desmontar o depósito de conhecimentos acumulados por uma pessoa em “prateleiras” organizadas, foi muito importante para o surgimento dessa teoria.


Então Me encontre.


Um algoritmo é uma característica do espaço, que é uma maneira significativa (controlada, eficaz, repetível) de transformá-lo.


Você precisa se acostumar com essa definição um pouco, porque há muito trabalho a fazer com ela.


Mas aqui na introdução é necessário não afugentar o trabalho, mas atrair atenção. Portanto, farei um anúncio do horizonte conceitual atualmente observado.


Consciência é a capacidade, usando a linguagem, de sintetizar rapidamente um novo algoritmo, transformando um algoritmo existente.


A vida é a acumulação espontânea de algoritmos espaciais nos objetos estruturais desse espaço.


A linguagem é um sistema complexo que consiste em:


  • o grupo de comunicação de evolutores ("falantes nativos"), fornecendo o procedimento para a conservação e desenvolvimento de macro- sinais e suas cadeias de processamento,
  • procedimentos para criar símbolos virtuais durante a comunicação ,
  • procedimentos para ganhar experiência (ou seja, construir cadeias úteis ) através do uso da comunicação . Ou seja, o procedimento de virtualização para o acúmulo de experiência.

Consciência é o processo de usar uma linguagem sem envolver um segundo evolver . Ou seja, um evolutor no processo de comunicação em si forma um sinal macro e depois o recebe.


Também vale a pena dizer que trabalhar com esses e outros conceitos apresentados mais adiante neste livro se mostrou útil não apenas pelo fato de surgirem essas definições. No processo de análise, foram encontrados vários padrões muito úteis do nosso espaço, implicitamente usados ​​em todos os ramos da ciência moderna e no design e desenvolvimento da arquitetura de grandes sistemas. Um registro formal desses padrões pode aumentar a eficiência da mão-de-obra em muitas áreas designadas.


Reli a introdução.
Ambicioso demais.
Mas é bem dito: "Quem anda supera a estrada".


Vamos começar .


E agora com certeza. Obrigado pela atenção.


Wiki do Livro Prático: Teoria Geral dos Algoritmos (bitbucket.org)
Sistema de rastreamento de erros: problemas (bitbucket.org)


Comentários


Muito obrigado pelo feedback. Conversar com você é muito útil para mim.


Se isso não complicar, você pode ser solicitado a adiar a discussão do livro para a plataforma proposta no artigo (Edições). Eu não planejava carregar o Habr favorito com discussões teóricas, queria deixar apenas a prática aqui. Agradecemos novamente antecipadamente.


Obrigado pela crítica. De fato, um artigo sobre Habré não é um lugar para procurar conhecidos e aqueles que testam a teoria de outra pessoa.


Nos artigos a seguir, se a comunidade me permitir publicar carma positivo para eles, não haverá cálculos teóricos. Útil aplicação prática útil dessa teoria.


Aguardo ansiosamente um feedback crítico sobre a tecnologia apresentada (um projeto de desenvolvimento de teoria aberta). A palavra "Geral" no nome da teoria é usada para enfatizar o fato de usar essa tecnologia.


Atenciosamente

Source: https://habr.com/ru/post/pt446066/


All Articles