mirror of
https://gitlab.com/DevLifeFromModernWay/devlifefrommodernway.gitlab.io.git
synced 2025-06-20 17:15:37 +00:00
Compare commits
12 Commits
2023-10-15
...
fe4eb154fa
Author | SHA1 | Date | |
---|---|---|---|
fe4eb154fa | |||
176a981c5d | |||
81334737ba | |||
09e937a350 | |||
5723942055 | |||
8acb8f9b2f | |||
786b104380 | |||
d7ec37ec45 | |||
5f3dd8c005 | |||
f965677403 | |||
bb93c8cca2 | |||
2872b3b432 |
@ -40,11 +40,16 @@ pages:
|
|||||||
- apt-get update && apt-get install -y calibre --no-install-recommends
|
- apt-get update && apt-get install -y calibre --no-install-recommends
|
||||||
|
|
||||||
- apt-get update && apt-get install -y fontconfig unzip sudo
|
- apt-get update && apt-get install -y fontconfig unzip sudo
|
||||||
- unzip "./fonts/*.zip" -d /usr/share/fonts/
|
- unzip "./styles/fonts/*.zip" -d /usr/share/fonts/
|
||||||
&& fc-cache -fv
|
&& fc-cache -fv
|
||||||
|
|
||||||
|
- mkdir -p /etc/fonts/conf.d &&
|
||||||
|
cp -a ./styles/fonts/fonts.conf /etc/fonts/conf.d/99-firgenerd.conf &&
|
||||||
|
fc-cache -fv
|
||||||
|
|
||||||
- sudo corepack enable
|
- sudo corepack enable
|
||||||
- sudo -u node pnpm install
|
- sudo -u node pnpm install
|
||||||
|
|
||||||
- sudo -u node env LANG=ja_JP.UTF-8 pnpm run build
|
- sudo -u node env LANG=ja_JP.UTF-8 pnpm run build
|
||||||
|
|
||||||
- cp -a _book/. public/
|
- cp -a _book/. public/
|
||||||
|
@ -1,8 +1,7 @@
|
|||||||
{
|
{
|
||||||
"root": "./src",
|
"root": "./src",
|
||||||
"title": "「モダンからはじめる プログラミング生活!」",
|
"title": "「モダンからはじめる プログラミング生活!」",
|
||||||
"author": "Satsuki Akiba <anosatsuk124@gmail.com>",
|
"author": "Satsuki Akiba",
|
||||||
"authorShort": "Satsuki Akiba",
|
|
||||||
"language": "ja",
|
"language": "ja",
|
||||||
"plugins": [
|
"plugins": [
|
||||||
"anchors",
|
"anchors",
|
||||||
@ -11,8 +10,10 @@
|
|||||||
"hints",
|
"hints",
|
||||||
"search-pro-fixed"
|
"search-pro-fixed"
|
||||||
],
|
],
|
||||||
|
"styles": {
|
||||||
|
"website": "./styles/website.css"
|
||||||
|
},
|
||||||
"pdf.fontSize": 16,
|
"pdf.fontSize": 16,
|
||||||
"pdf.fontFamily": "ZenMaruGothic",
|
|
||||||
"pdf.paperSize": "a4",
|
"pdf.paperSize": "a4",
|
||||||
"pdf.embedFonts": true
|
"pdf.embedFonts": true
|
||||||
}
|
}
|
||||||
|
BIN
fonts/FirgeNerd_v0.2.0.zip
(Stored with Git LFS)
Normal file
BIN
fonts/FirgeNerd_v0.2.0.zip
(Stored with Git LFS)
Normal file
Binary file not shown.
9
fonts/fonts.conf
Normal file
9
fonts/fonts.conf
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<?xml version='1.0'?>
|
||||||
|
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
|
||||||
|
<fontconfig>
|
||||||
|
<match target="pattern">
|
||||||
|
<edit name="family" mode="assign">
|
||||||
|
<string>FirgeNerd</string>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
</fontconfig>
|
3
public/.gitignore
vendored
Normal file
3
public/.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
*
|
||||||
|
!.gitignore
|
||||||
|
!google*.html
|
1
public/google59c695aacfffca60.html
Normal file
1
public/google59c695aacfffca60.html
Normal file
@ -0,0 +1 @@
|
|||||||
|
google-site-verification: google59c695aacfffca60.html
|
@ -16,6 +16,87 @@
|
|||||||
|
|
||||||
{% endhint %}
|
{% endhint %}
|
||||||
|
|
||||||
## このリポジトリについて
|
{% hint style="danger" %}
|
||||||
|
|
||||||
|
**注意**:
|
||||||
|
|
||||||
|
本リポジトリは余裕をもって、片手間にでも読み進めることを想定しています。
|
||||||
|
|
||||||
|
いますぐ即戦力になるような教材では**ありません**。
|
||||||
|
|
||||||
|
興味を持ったところから、気軽に読み進めてください。
|
||||||
|
|
||||||
|
{% endhint %}
|
||||||
|
|
||||||
|
本リポジトリはゲーム感覚で現代的で実践的なプログラマになるための教材です。
|
||||||
|
|
||||||
|
## 構成と目的
|
||||||
|
|
||||||
|
多くのプログラミング教材が** (たった) 一つの**プログラミング言語 (あるいは _framework_) の文法や機能を説明することに重点を置いていますが、
|
||||||
|
ここではそれらを最小限に抑え、むしろより多くの広い範囲に目を向けます。
|
||||||
|
|
||||||
|
様々な領域の開発を通じて**プログラミングと開発**を広く学びます (プログラミング**言語**を広く学ぶわけではないのです!) 。
|
||||||
|
|
||||||
|
- 低レイヤプログラミング
|
||||||
|
|
||||||
|
- ゲーム開発
|
||||||
|
|
||||||
|
- Web アプリケーション開発
|
||||||
|
|
||||||
|
などを実践的に解決していく形式をとります。
|
||||||
|
|
||||||
|
その過程での副産物として、
|
||||||
|
|
||||||
|
- Google 検索の方法 [^2]
|
||||||
|
|
||||||
|
- `Git` (あるいは `GitHub`) の使い方
|
||||||
|
|
||||||
|
- プログラミングにまつわる思想 / 文化
|
||||||
|
|
||||||
|
- 複数のプログラミング言語を書く力
|
||||||
|
- `JavaScript / TypeScript`
|
||||||
|
- `Rust`
|
||||||
|
- `C#`
|
||||||
|
|
||||||
|
など、プログラミングとは切り離せない周辺分野の知識さえも得られます。
|
||||||
|
|
||||||
|
## なぜ複数の言語を学ぶのか
|
||||||
|
|
||||||
|
例えば、[X (Twitter)][2] の [Twitter の GitHub][1] [^1] を見てみると、 **Top languages** (プログラミング言語のランキング) は
|
||||||
|
|
||||||
|
- `Scala`
|
||||||
|
- `Java`
|
||||||
|
- `Python`
|
||||||
|
- `JavaScript`
|
||||||
|
- `C`
|
||||||
|
|
||||||
|
となっています。他にも同サービスには `Rust` や `TypeScript` なども利用されています。
|
||||||
|
|
||||||
|
このように現代的な開発環境において、複数の言語や framework を組み合わせて利用することは珍しくありません。
|
||||||
|
実際のところ、多くのプログラマは 3 つ以上のプログラミング言語を容易に使いこなします。
|
||||||
|
|
||||||
|
プログラミング言語はマスタすることが最善手ではありません。
|
||||||
|
それは多くの言語間に共通する考え方 / 書き方があるからで、複数の言語を習得することは実際には**まったくの困難を伴いません**。
|
||||||
|
しかし、「一つの言語でもマスタしている」と断言できるプログラマはそう多くないはずです。
|
||||||
|
それはプログラミング言語は、**ある程度のレベルに**達すると、**ある程度のレベルで*実用的に***使いこなせるようになるからです。
|
||||||
|
|
||||||
|
プログラミング言語の文法や機能を完全に理解することは深淵と向き合うことですから、
|
||||||
|
一つの言語について深く学ぶことは最初にやるべきタスクではありません。
|
||||||
|
むしろ広範な領域に手を出して目一杯遊び疲れてから、愛着を持った言語などから深く学ぶべき言語を選ぶほうが効率的だからです。
|
||||||
|
|
||||||
|
[1]: https://github.com/twitter
|
||||||
|
[2]: https://x.com/
|
||||||
|
|
||||||
## このリポジトリの使い方、読み進め方
|
## このリポジトリの使い方、読み進め方
|
||||||
|
|
||||||
|
### 用語の表記について
|
||||||
|
|
||||||
|
プログラミングの周辺分野用語は、Googleablity [^2] を考慮して英語表記を優先しています。
|
||||||
|
初出で重要なキーワードは _Italic_ 体で表記しています。
|
||||||
|
|
||||||
|
> プログラミング言語 (あるいは _framework_) の文法や機能を …
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
[^1]: [X (Twitter)][2] は、イーロン氏以降に _Open Source_ 化が進んでいます。
|
||||||
|
[^2]: Google での検索しやすさ。`C language` は `C-language` `C-lang` などと表記すると Googleablity が高い。
|
||||||
|
BIN
src/styles/fonts/woff2/FirgeNerd-Bold.woff2
Normal file
BIN
src/styles/fonts/woff2/FirgeNerd-Bold.woff2
Normal file
Binary file not shown.
BIN
src/styles/fonts/woff2/FirgeNerd-Regular.woff2
Normal file
BIN
src/styles/fonts/woff2/FirgeNerd-Regular.woff2
Normal file
Binary file not shown.
125
src/styles/fonts/woff2/FirgeNerd_LICENSE
Normal file
125
src/styles/fonts/woff2/FirgeNerd_LICENSE
Normal file
@ -0,0 +1,125 @@
|
|||||||
|
# Licensing
|
||||||
|
|
||||||
|
- Source fonts are licensed under SIL OPEN FONT LICENSE Version 1.1.
|
||||||
|
For more information, see "LICENSE_<FontName>" file contained in the "source" directory.
|
||||||
|
- "Firge" are licensed under SIL OPEN FONT LICENSE Version 1.1.
|
||||||
|
- Other source code, such as generating scripts, will use the MIT license.
|
||||||
|
|
||||||
|
## "Firge" licensing
|
||||||
|
|
||||||
|
Copyright (c) 2021, Yuko OTAWARA. with Reserved Font Name "Firge"
|
||||||
|
|
||||||
|
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||||
|
This license is copied below, and is also available with a FAQ at:
|
||||||
|
https://scripts.sil.org/OFL
|
||||||
|
|
||||||
|
|
||||||
|
-----------------------------------------------------------
|
||||||
|
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||||
|
-----------------------------------------------------------
|
||||||
|
|
||||||
|
PREAMBLE
|
||||||
|
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||||
|
development of collaborative font projects, to support the font creation
|
||||||
|
efforts of academic and linguistic communities, and to provide a free and
|
||||||
|
open framework in which fonts may be shared and improved in partnership
|
||||||
|
with others.
|
||||||
|
|
||||||
|
The OFL allows the licensed fonts to be used, studied, modified and
|
||||||
|
redistributed freely as long as they are not sold by themselves. The
|
||||||
|
fonts, including any derivative works, can be bundled, embedded,
|
||||||
|
redistributed and/or sold with any software provided that any reserved
|
||||||
|
names are not used by derivative works. The fonts and derivatives,
|
||||||
|
however, cannot be released under any other type of license. The
|
||||||
|
requirement for fonts to remain under this license does not apply
|
||||||
|
to any document created using the fonts or their derivatives.
|
||||||
|
|
||||||
|
DEFINITIONS
|
||||||
|
"Font Software" refers to the set of files released by the Copyright
|
||||||
|
Holder(s) under this license and clearly marked as such. This may
|
||||||
|
include source files, build scripts and documentation.
|
||||||
|
|
||||||
|
"Reserved Font Name" refers to any names specified as such after the
|
||||||
|
copyright statement(s).
|
||||||
|
|
||||||
|
"Original Version" refers to the collection of Font Software components as
|
||||||
|
distributed by the Copyright Holder(s).
|
||||||
|
|
||||||
|
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||||
|
or substituting -- in part or in whole -- any of the components of the
|
||||||
|
Original Version, by changing formats or by porting the Font Software to a
|
||||||
|
new environment.
|
||||||
|
|
||||||
|
"Author" refers to any designer, engineer, programmer, technical
|
||||||
|
writer or other person who contributed to the Font Software.
|
||||||
|
|
||||||
|
PERMISSION & CONDITIONS
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||||
|
redistribute, and sell modified and unmodified copies of the Font
|
||||||
|
Software, subject to the following conditions:
|
||||||
|
|
||||||
|
1) Neither the Font Software nor any of its individual components,
|
||||||
|
in Original or Modified Versions, may be sold by itself.
|
||||||
|
|
||||||
|
2) Original or Modified Versions of the Font Software may be bundled,
|
||||||
|
redistributed and/or sold with any software, provided that each copy
|
||||||
|
contains the above copyright notice and this license. These can be
|
||||||
|
included either as stand-alone text files, human-readable headers or
|
||||||
|
in the appropriate machine-readable metadata fields within text or
|
||||||
|
binary files as long as those fields can be easily viewed by the user.
|
||||||
|
|
||||||
|
3) No Modified Version of the Font Software may use the Reserved Font
|
||||||
|
Name(s) unless explicit written permission is granted by the corresponding
|
||||||
|
Copyright Holder. This restriction only applies to the primary font name as
|
||||||
|
presented to the users.
|
||||||
|
|
||||||
|
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||||
|
Software shall not be used to promote, endorse or advertise any
|
||||||
|
Modified Version, except to acknowledge the contribution(s) of the
|
||||||
|
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||||
|
permission.
|
||||||
|
|
||||||
|
5) The Font Software, modified or unmodified, in part or in whole,
|
||||||
|
must be distributed entirely under this license, and must not be
|
||||||
|
distributed under any other license. The requirement for fonts to
|
||||||
|
remain under this license does not apply to any document created
|
||||||
|
using the Font Software.
|
||||||
|
|
||||||
|
TERMINATION
|
||||||
|
This license becomes null and void if any of the above conditions are
|
||||||
|
not met.
|
||||||
|
|
||||||
|
DISCLAIMER
|
||||||
|
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||||
|
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||||
|
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||||
|
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||||
|
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||||
|
OTHER DEALINGS IN THE FONT SOFTWARE.
|
||||||
|
|
||||||
|
## Other source licensing (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2021 Yuko OTAWARA
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
||||||
|
|
26
src/styles/website.css
Normal file
26
src/styles/website.css
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: "FirgeNerd";
|
||||||
|
src: url("./fonts/woff2/FirgeNerd-Regular.woff2") format("woff2");
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "FirgeNerdConsole";
|
||||||
|
src: url("./fonts/woff2/FirgeNerd-Bold.woff2") format("woff2");
|
||||||
|
font-weight: bold;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.book.font-family-1 {
|
||||||
|
font-family: "FirgeNerd", "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markdown-section code,
|
||||||
|
.markdown-section pre {
|
||||||
|
font-family: "FirgeNerd", monospace;
|
||||||
|
}
|
||||||
|
|
||||||
|
.markdown-section code {
|
||||||
|
font-size: 0.9em;
|
||||||
|
}
|
Reference in New Issue
Block a user