roebe 0.5.191 → 0.6.3
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of roebe might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/README.md +23 -26
- data/bin/create_my_directories +2 -2
- data/bin/{ruby_dhcpcd → dhcpcd_wrapper} +1 -1
- data/doc/README.gen +12 -0
- data/doc/core/array.md +24 -23
- data/doc/core/gem_and_gemspec.md +12 -11
- data/doc/core/misc.md +23 -20
- data/doc/statistics/statistics.md +1 -0
- data/lib/roebe/actions/actions.rb +68 -0
- data/lib/roebe/base/misc.rb +14 -1
- data/lib/roebe/browser/output_url_then_open_in_browser.rb +8 -6
- data/lib/roebe/classes/alltagsgeschichte.rb +1 -1
- data/lib/roebe/classes/at.rb +2 -2
- data/lib/roebe/classes/auto_rename_file_based_on_its_creation_date.rb +24 -12
- data/lib/roebe/classes/books/books.rb +159 -117
- data/lib/roebe/classes/books/menu.rb +8 -7
- data/lib/roebe/classes/books/sanitize_this_book_path/sanitize_this_book_path.rb +0 -1
- data/lib/roebe/classes/check_yaml.rb +15 -11
- data/lib/roebe/classes/compile_kernel.rb +3 -1
- data/lib/roebe/classes/copy_kernel_config.rb +5 -3
- data/lib/roebe/classes/create_desktop_file.rb +1 -1
- data/lib/roebe/classes/create_my_directories.rb +12 -10
- data/lib/roebe/classes/dhcpcd/{dhcpcd.rb → dhcpcd_wrapper.rb} +137 -95
- data/lib/roebe/classes/dhcpcd/kill_dhcpcd.rb +2 -2
- data/lib/roebe/classes/do_install.rb +7 -6
- data/lib/roebe/classes/done.rb +1 -1
- data/lib/roebe/classes/downcase_extension.rb +4 -4
- data/lib/roebe/classes/email.rb +44 -40
- data/lib/roebe/classes/enable.rb +1 -1
- data/lib/roebe/classes/github.rb +1 -1
- data/lib/roebe/classes/kde/install_this_konsole_theme.rb +1 -1
- data/lib/roebe/classes/make_gem.rb +29 -27
- data/lib/roebe/classes/readme_generator/readme_generator.rb +597 -1
- data/lib/roebe/classes/report_how_many_files_are_in_this_directory.rb +83 -0
- data/lib/roebe/classes/set_background.rb +14 -0
- data/lib/roebe/classes/show_ten_aliases.rb +15 -3
- data/lib/roebe/classes/tales_from_the_crypt.rb +1 -1
- data/lib/roebe/classes/update.rb +2 -1
- data/lib/roebe/constants/array_install_these_gem_projects.rb +1 -1
- data/lib/roebe/constants/roebe.rb +2 -0
- data/lib/roebe/custom_methods/module.rb +16 -0
- data/lib/roebe/fonts/fonts.rb +39 -0
- data/lib/roebe/hello_world/hello_world.rb +0 -0
- data/lib/roebe/math/log10.rb +3 -3
- data/lib/roebe/math/the_collatz_problem.rb +104 -0
- data/lib/roebe/shell/shell/shell.rb +6 -6
- data/lib/roebe/shell_scripts/lfs/002_gcc_1.sh +13 -1
- data/lib/roebe/shell_scripts/lfs/003_linux_1.sh +1 -0
- data/lib/roebe/shell_scripts/lfs/007_ncurses_2.sh +4 -1
- data/lib/roebe/shell_scripts/lfs/020_xz_2.sh +5 -5
- data/lib/roebe/shell_scripts/lfs/021_binutils_2.sh +1 -0
- data/lib/roebe/shell_scripts/lfs/022_gcc_2.sh +12 -1
- data/lib/roebe/shell_scripts/lfs/025_ruby_2.sh +13 -0
- data/lib/roebe/shell_scripts/lfs/lfs_build_variables.sh +48 -8
- data/lib/roebe/toplevel_methods/to_mp3.rb +1 -1
- data/lib/roebe/version/version.rb +2 -2
- data/lib/roebe/wasm/README.md +7 -0
- data/lib/roebe/wasm/enable_simple_puts_output.rb +9 -0
- data/lib/roebe/wasm/wasm_examples.html +43 -0
- data/lib/roebe/www/RNA/RNA.cgi +42 -1
- data/lib/roebe/www/algorithms/algorithms.rb +22 -0
- data/lib/roebe/www/analytical_chemistry/content.md +3 -0
- data/lib/roebe/www/animals/animals.cgi +25 -0
- data/lib/roebe/www/bioanalytik/bioanalytik.cgi +90 -0
- data/lib/roebe/www/cellbiology/cellbiology.rb +16 -2
- data/lib/roebe/www/chemistry/S/303/244uren_Basen_und_der_pH_Wert/S/303/244uren_Basen_und_der_pH_Wert.cgi +242 -0
- data/lib/roebe/www/chemistry/chemistry.rb +10 -258
- data/lib/roebe/www/chemistry/css_rules.css +67 -0
- data/lib/roebe/www/chemistry/die_quantenzahlen/die_quantenzahlen.cgi +123 -0
- data/lib/roebe/www/chemistry/funktionelle_gruppen_in_der_chemie/funktionelle_gruppen_in_der_chemie.cgi +52 -0
- data/lib/roebe/www/erste_hilfe/erste_hilfe.cgi +212 -62
- data/lib/roebe/www/fonts/fonts.cgi +245 -0
- data/lib/roebe/www/hardware/computersysteme/computersysteme.rb +117 -102
- data/lib/roebe/www/hardware/netzteile/netzteile.cgi +94 -0
- data/lib/roebe/www/immunology/immunology.rb +101 -7
- data/lib/roebe/www/linux/antiX/antiX.rb +7 -4
- data/lib/roebe/www/linux/linux.rb +9 -11
- data/lib/roebe/www/linux/linuxmint/linuxmint.rb +33 -0
- data/lib/roebe/www/linux/slackware/slackware.rb +136 -27
- data/lib/roebe/www/lyrics/lyrics.rb +1 -1
- data/lib/roebe/www/microbiology/microbiology.rb +17 -2
- data/lib/roebe/www/mikrobielle_physiologie/mikrobielle_physiologie.cgi +1086 -2
- data/lib/roebe/www/mitochondria/mitochondria.cgi +16 -2
- data/lib/roebe/www/module_www.rb +2 -3
- data/lib/roebe/www/neurobiology/neurobiology.rb +20 -3
- data/lib/roebe/www/pdf/pdf.rb +13 -0
- data/lib/roebe/www/physics/physics.rb +20 -4
- data/lib/roebe/www/physiology/physiology.rb +5 -1
- data/lib/roebe/www/play_this_video_file/play_this_video_file.cgi +1 -1
- data/lib/roebe/www/programming_advice/programming_advice.cgi +36 -0
- data/lib/roebe/www/programming_advice/programming_advice.md +349 -0
- data/lib/roebe/www/psychologie/psychologie.rb +7 -1
- data/lib/roebe/www/science/science.rb +6 -0
- data/lib/roebe/www/sex_and_reproduction/sex_and_reproduction.cgi +18 -2
- data/lib/roebe/www/structural_biology/structural_biology.cgi +16 -0
- data/lib/roebe/www/the_cell_cycle/the_cell_cycle.cgi +27 -0
- data/lib/roebe/www/video/video.rb +1 -1
- data/lib/roebe/www/virology/virology.rb +12 -1
- data/lib/roebe/www/war_in_Ukraine_2022/war_in_Ukraine_2022.rb +26 -8
- data/lib/roebe/www/xorg/xorg.rb +3 -202
- data/lib/roebe/yaml/books/favourite_books.yml +6 -8
- data/lib/roebe/yaml/directory_structure.yml +1 -0
- metadata +26 -15
- data/lib/roebe/classes/readme_generator/constants.rb +0 -21
- data/lib/roebe/classes/readme_generator/initialize.rb +0 -38
- data/lib/roebe/classes/readme_generator/misc.rb +0 -548
- data/lib/roebe/classes/readme_generator/reset.rb +0 -28
- data/lib/roebe/classes/readme_generator/run.rb +0 -20
- data/lib/roebe/shell_scripts/lfs/lfs_variables.sh +0 -31
- data/lib/roebe/www/mikrobielle_physiologie/mikrobielle_physiologie.rb +0 -1055
- data/lib/roebe/www/programming_advice/programming_advice.yml +0 -31
@@ -21,7 +21,7 @@ body_css_class 'mar0px s2px padt2px VERDANAs'
|
|
21
21
|
body_css_style 'background-color: #d3d2d1;'
|
22
22
|
default_font_size
|
23
23
|
|
24
|
-
|
24
|
+
smaller_width('mar0px pad0px s0_6em') {
|
25
25
|
h1 dot(106, 'marr8px')+
|
26
26
|
'Mitochondria',
|
27
27
|
'mart1px marb0_5em'
|
@@ -49,7 +49,21 @@ doc('mar0px pad0px s0_6em') {
|
|
49
49
|
dimg 'science/biology/organelles/TEM_Bild_eines_Mitochondriums.png',
|
50
50
|
'mar0_5em mars3em bblack3'
|
51
51
|
br
|
52
|
-
}
|
52
|
+
}
|
53
|
+
# === Slogans
|
54
|
+
fancy3 'Slogans'
|
55
|
+
p_default_le {
|
56
|
+
e 'Mutationen ereignen sich in der DNA von Mitochondrien mindestens
|
57
|
+
10-mal häufiger als in der DNA des Zellkerns.'
|
58
|
+
br
|
59
|
+
e 'Mitochondriale DNA wird über weibliche Linien vererbt.'
|
60
|
+
br
|
61
|
+
e 'Hauptaufgabe der Mitochondrien ist die <b>oxidative
|
62
|
+
Phosphorylierung</b>.'
|
63
|
+
br
|
64
|
+
e 'Mitochondrien werden auch die <b>Kraftwerke der Zelle</b>
|
65
|
+
genannt.'
|
66
|
+
}
|
53
67
|
p_default('mars1em BOLD') {
|
54
68
|
science_hyperlinks { :use_unicode_right_arrows }
|
55
69
|
}
|
data/lib/roebe/www/module_www.rb
CHANGED
@@ -111,9 +111,8 @@ module WWW # === Roebe::WWW
|
|
111
111
|
# ======================================================================= #
|
112
112
|
send(use_this_fancy_variant, 'Der Calvin Zyklus')
|
113
113
|
p_default_le {
|
114
|
-
e 'The Calvin cycle transforms inorganic carbon in the form of
|
115
|
-
|
116
|
-
carbohydrates.'
|
114
|
+
e 'The Calvin cycle transforms inorganic carbon in the form of carbon
|
115
|
+
dioxide (CO₂) into organic carbon in the form of carbohydrates.'
|
117
116
|
br
|
118
117
|
e 'Der Calvin-Zyklus synthetisiert <b>Hexosen</b>.'
|
119
118
|
br
|
@@ -5,7 +5,7 @@ body_css_class 'mar0px s1px padt1px VERDANAs'
|
|
5
5
|
body_css_style 'background-color: #d3d2d1;'
|
6
6
|
default_font_size_and_hyperlinks
|
7
7
|
|
8
|
-
|
8
|
+
smaller_width('mar0px pad0px s0_8em') {
|
9
9
|
h1 'Neurobiology',
|
10
10
|
'mart1px marb0_1em'
|
11
11
|
# =========================================================================== #
|
@@ -362,7 +362,24 @@ preferred_width('mar0px pad0px s0_8em') {
|
|
362
362
|
earrow 'Homeostasis often relies on cooperation
|
363
363
|
between the motor and autonomic nervous systems.'
|
364
364
|
br
|
365
|
-
earrow 'The PNS transmits information to and
|
366
|
-
|
365
|
+
earrow 'The PNS transmits information to and from
|
366
|
+
the CNS.'
|
367
|
+
br
|
368
|
+
earrow 'In a constant environment humans exhibit
|
369
|
+
a sleep/wake cycle of 24.2 hours.'
|
370
|
+
br
|
371
|
+
earrow 'The ruptured follicle left behind after
|
372
|
+
ovulation develops into the <b>corpus luteum</b>.'
|
373
|
+
br
|
374
|
+
earrow 'The ability to sense and react originated
|
375
|
+
billions of years ago <b>in prokaryotes</b>.'
|
376
|
+
br
|
377
|
+
earrow 'Hippocampal damage and memory loss are
|
378
|
+
common in the early stages of Alzheimer’s
|
379
|
+
disease.'
|
380
|
+
br
|
381
|
+
earrow 'The sympathetic and parasympathetic divisions of
|
382
|
+
the autonomic nervous system have largely antagonistic
|
383
|
+
(opposite) functions in regulating organ function.'
|
367
384
|
}
|
368
385
|
}}
|
data/lib/roebe/www/pdf/pdf.rb
CHANGED
@@ -16,6 +16,19 @@ smaller_width('mar0px pad6px s0_8em') {
|
|
16
16
|
h1 sg('PC/PDF_FAVICON.png','marr8px')+
|
17
17
|
'Wissenswertes über PDF',
|
18
18
|
'mart1px'
|
19
|
+
# ========================================================================= #
|
20
|
+
# === Wie fügen wir eine Unterschrift in eine .pdf Datei ein?
|
21
|
+
# ========================================================================= #
|
22
|
+
p_default_le {
|
23
|
+
frage 'Wie fügen wir eine Unterschrift in eine .pdf Datei ein?'
|
24
|
+
br
|
25
|
+
e 'Dies geht mittels <b>Xournalpp</b>.'
|
26
|
+
br
|
27
|
+
e 'Siehe die folgende Anleitung:'
|
28
|
+
br
|
29
|
+
read_and_display '../xournalpp/content.md',
|
30
|
+
css_style: 'font-size: 1.2em'
|
31
|
+
}
|
19
32
|
p_default_le {
|
20
33
|
frage 'Wie können wir eine .ppt Datei in eine .pdf Datei konvertieren?'
|
21
34
|
br
|
@@ -42,10 +42,12 @@ def counter(i)
|
|
42
42
|
e @counter.to_s+' '+i.to_s
|
43
43
|
end
|
44
44
|
|
45
|
-
|
45
|
+
smaller_width('pad0px s0_7em mar0px') {
|
46
46
|
h1 sg(:dot109, 'marr8px pad8px')+
|
47
47
|
'Alles über Physik',
|
48
|
-
'wid70 pad12px s0px mar2px mart1px'
|
48
|
+
'wid70 pad12px s0px mar2px mart1px',
|
49
|
+
'',
|
50
|
+
'border-radius: 12px;'
|
49
51
|
p_default_le {
|
50
52
|
e 'Mithilfe von Gleichungen in der Physik kann der Mensch seine
|
51
53
|
Umgebung beschreiben.'
|
@@ -56,8 +58,8 @@ doc_default_width('pad0px s0_5em mar0px') {
|
|
56
58
|
h4 'Energie um ein Auto zum Beschleunigen zu bringen',
|
57
59
|
'marb1px'
|
58
60
|
p('entry') {
|
59
|
-
e 'Welche Energiemenge ist notwendig, um ein Auto mit
|
60
|
-
|
61
|
+
e 'Welche Energiemenge ist notwendig, um ein Auto mit einer Masse von
|
62
|
+
1,5 Tonnen aus dem Stillstand auf
|
61
63
|
50 km/h zu beschleunigen? Welche Energie ist notwendig
|
62
64
|
um das gleiche Auto von 50 auf 100 zu beschleunigen?'
|
63
65
|
br
|
@@ -283,6 +285,20 @@ doc_default_width('pad0px s0_5em mar0px') {
|
|
283
285
|
}
|
284
286
|
fancy_spacer
|
285
287
|
# ========================================================================= #
|
288
|
+
# === SI Einheiten (SI tag)
|
289
|
+
# ========================================================================= #
|
290
|
+
fancy2 'SI Einheiten'
|
291
|
+
table3('mars1em fancy_table_spacing','','',
|
292
|
+
'<b>Symbol</b>','<b>Name</b>','<b>Quantity</b>',
|
293
|
+
'(1) s','second','time',
|
294
|
+
'(2) m','metre','length',
|
295
|
+
'(3) kg','kilogram','mass',
|
296
|
+
'(4) A','ampere','electric current',
|
297
|
+
'(5) K','kelvin','thermodynamic temperature',
|
298
|
+
'(6) mol','mole','amount of substance',
|
299
|
+
'(7) cd','candela','luminous intensity'
|
300
|
+
)
|
301
|
+
# ========================================================================= #
|
286
302
|
# === Nicht-SI Einheiten
|
287
303
|
# ========================================================================= #
|
288
304
|
fancy2 'Nicht-SI Einheiten'
|
@@ -11,7 +11,7 @@ body_css_class 'mar0px s2px padt2px VERDANAs'
|
|
11
11
|
body_css_style 'background-color: #d3d2d1;'
|
12
12
|
default_font_size_and_hyperlinks
|
13
13
|
|
14
|
-
|
14
|
+
smaller_width('mar0px pad0px s0_5em') {
|
15
15
|
h1 dot(106, 'marr8px')+
|
16
16
|
'Physiology',
|
17
17
|
'mart1px marb0_5em'
|
@@ -368,6 +368,10 @@ doc_smaller_width('mar0px pad0px s0_5em') {
|
|
368
368
|
br
|
369
369
|
e 'The human organs all work selflessly toward the good of
|
370
370
|
the whole body.'
|
371
|
+
br
|
372
|
+
e 'The osmolarity of human blood is about 300 milliosmoles
|
373
|
+
per liter (mOsm/L), whereas that of seawater is about
|
374
|
+
1000 mOsm/L.'
|
371
375
|
}
|
372
376
|
}
|
373
377
|
}}
|
@@ -13,7 +13,7 @@
|
|
13
13
|
# http://localhost/programming/ruby/src/roebe/lib/roebe/www/play_this_video_file/play_this_video_file.cgi
|
14
14
|
# =========================================================================== #
|
15
15
|
require 'cyberweb/autoinclude'
|
16
|
-
require 'multimedia_paradise/constants/
|
16
|
+
require 'multimedia_paradise/constants/constants.rb'
|
17
17
|
require 'multimedia_paradise/toplevel_methods/return_all_video_files.rb'
|
18
18
|
|
19
19
|
english('Play this video file') {
|
@@ -0,0 +1,36 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# http://localhost/programming/ruby/src/roebe/lib/roebe/www/programming_advice/programming_advice.cgi
|
6
|
+
# =========================================================================== #
|
7
|
+
require 'cyberweb/autoinclude'
|
8
|
+
english('Programming') {
|
9
|
+
created_on '12.02.2024' # Monday.
|
10
|
+
autoextend
|
11
|
+
ruby_favicon
|
12
|
+
default_template ''
|
13
|
+
body_css_class 'mar0px s2px padt2px VERDANAs'
|
14
|
+
body_css_style 'background-color: #d3d2d1;'
|
15
|
+
default_hyperlinks
|
16
|
+
font_size '1.2em'
|
17
|
+
|
18
|
+
smaller_width('mar0px pad0px s0_8em') {
|
19
|
+
h1 title?,
|
20
|
+
'mart1px marb0_5em'
|
21
|
+
p_default_le {
|
22
|
+
e "One problem in larger software stacks is that critical
|
23
|
+
decisions aren’t easily reversible. Once you decide to use
|
24
|
+
this vendor’s database, or that architectural pattern, or
|
25
|
+
a certain deployment model, you are committed to a course
|
26
|
+
of action that cannot be undone, except at great
|
27
|
+
expense."
|
28
|
+
}
|
29
|
+
# ========================================================================= #
|
30
|
+
# === Slogans
|
31
|
+
# ========================================================================= #
|
32
|
+
h2 'Slogans'
|
33
|
+
p_default_le {
|
34
|
+
display_this_file_without_comments 'programming_advice.md', css_style: 'font-size: 1.2em'
|
35
|
+
}
|
36
|
+
}}
|
@@ -0,0 +1,349 @@
|
|
1
|
+
# =========================================================================== #
|
2
|
+
# === programming_advice.yml
|
3
|
+
#
|
4
|
+
# This is useful programming advice in general, no matter which paradigm
|
5
|
+
# is in use.
|
6
|
+
# =========================================================================== #
|
7
|
+
|
8
|
+
- Express what you mean, simply and directly.
|
9
|
+
|
10
|
+
- Store in one location and preferably only one.
|
11
|
+
|
12
|
+
- Each module should do one thing well.
|
13
|
+
|
14
|
+
- Let the data structure the program.
|
15
|
+
|
16
|
+
- Make it right before you make it faster.
|
17
|
+
|
18
|
+
- Keep it right when you make it faster.
|
19
|
+
|
20
|
+
- Die Basis der objektorientierten Programmierung eines Softwaresystems
|
21
|
+
ist das Modellieren einer Aufgabe durch kooperierende Objekte.
|
22
|
+
|
23
|
+
- The essence of the recursive approach lies in applying the same
|
24
|
+
decomposition at each stage of a given solution.
|
25
|
+
|
26
|
+
- The main advantage of recursion as a solution technique is that
|
27
|
+
it provides a powerful mechanism for managing complexity.
|
28
|
+
|
29
|
+
- Choosing the correct means of abstraction makes programming easier.
|
30
|
+
|
31
|
+
- Encapsulation is the protection against unauthorized access to
|
32
|
+
the internal state of an object via a uniquely defined interface.
|
33
|
+
|
34
|
+
- Objects communicate with one another through messages.
|
35
|
+
|
36
|
+
- Abstraction: a model is always a reduced representation of
|
37
|
+
the system that it represents.
|
38
|
+
|
39
|
+
- The ever-increasing complexity of modern software systems can
|
40
|
+
only be managed with suitable means of abstraction.
|
41
|
+
|
42
|
+
- Models can be used to describe software systems.
|
43
|
+
|
44
|
+
- Floating point numbers are represented as an approximation within
|
45
|
+
a computer system.
|
46
|
+
|
47
|
+
- A well-designed object in OOP-centric programming languages
|
48
|
+
does the minimum required to get its job done.
|
49
|
+
|
50
|
+
- It is always worth trying to write programs that write programs.
|
51
|
+
Anything you have to do repeatedly may be ripe for automation.
|
52
|
+
|
53
|
+
- The problem with obscure code is that debugging and modification
|
54
|
+
become much more difficult.
|
55
|
+
|
56
|
+
- Write clearly - don't be too clever.
|
57
|
+
|
58
|
+
- Although any single weakness causes no great harm, the cumulative
|
59
|
+
effect of several confusing statements is code that is simply
|
60
|
+
unintelligible.
|
61
|
+
|
62
|
+
- Library functions are one way to reduce the apparent complexity
|
63
|
+
of a program.
|
64
|
+
|
65
|
+
- Write clearly - do not sacrifice clarity for "efficiency".
|
66
|
+
|
67
|
+
- One of the first services to be automated in early computer
|
68
|
+
languages was the conversion of decimal to binary.
|
69
|
+
|
70
|
+
- Let the machine do the dirty work.
|
71
|
+
|
72
|
+
- Replace repetitive expressions by calls to a common function.
|
73
|
+
|
74
|
+
- Parenthesize to avoid ambiguity.
|
75
|
+
|
76
|
+
- Choose variable names that won't lead to confusion or ambiguity.
|
77
|
+
|
78
|
+
- One of the most productive ways to make a program easier to
|
79
|
+
understand is to reduce the degree of interdependence between
|
80
|
+
statements.
|
81
|
+
|
82
|
+
- Avoid unnecessary if/else branches.
|
83
|
+
|
84
|
+
- Use the good features of a language and avoid the bad ones.
|
85
|
+
|
86
|
+
- The "telephone test" in programming is to decide whether some piece
|
87
|
+
of code is clear or not. If someone could understand your code
|
88
|
+
when read aloud over the telephone, it's clear enough. If not,
|
89
|
+
then it needs rewriting. Use the "telephone test" for readability.
|
90
|
+
|
91
|
+
- Write clearly.
|
92
|
+
|
93
|
+
- Use IF-ELSE to emphasize that only one of two actions is to
|
94
|
+
be performed.
|
95
|
+
|
96
|
+
- As much as possible, a program should be written so the control flow
|
97
|
+
structures lead the reader quickly and directly to an understanding
|
98
|
+
of what the program does.
|
99
|
+
|
100
|
+
- Make your programs read from top to bottom.
|
101
|
+
|
102
|
+
- No amount of commenting can rescue bad code.
|
103
|
+
|
104
|
+
- One flaw in a program is often a clue that more
|
105
|
+
are present.
|
106
|
+
|
107
|
+
- Choosing a better data structure is often an art that can not be
|
108
|
+
taught. Thus, one should always ask the following question: „How
|
109
|
+
can the data be organized so that the computation becomes as
|
110
|
+
easy as possible?“
|
111
|
+
|
112
|
+
- Choose a data representation that makes the program simple(r).
|
113
|
+
|
114
|
+
- Plan your data structures.
|
115
|
+
|
116
|
+
- Make the coupling between modules visible.
|
117
|
+
|
118
|
+
- Each module should do one thing well.
|
119
|
+
|
120
|
+
- Input/output is almost always messy and subject to
|
121
|
+
change.
|
122
|
+
|
123
|
+
- Let the data structure the program.
|
124
|
+
|
125
|
+
- A big program should be a collection of manageable pieces,
|
126
|
+
each of which must obey the rules of good style.
|
127
|
+
|
128
|
+
- Write and test a big program in small pieces.
|
129
|
+
|
130
|
+
- Use recursive procedures for recursively-defined data
|
131
|
+
structures.
|
132
|
+
|
133
|
+
- The discipline of breaking a large job into appropriate small
|
134
|
+
pieces is also called "composite design."
|
135
|
+
|
136
|
+
- Never trust any data. Test input for validity and
|
137
|
+
plausibility.
|
138
|
+
|
139
|
+
- Simple tests save later grief.
|
140
|
+
|
141
|
+
- Make sure input cannot violate the constraints of a
|
142
|
+
program.
|
143
|
+
|
144
|
+
- Use uniform input formats.
|
145
|
+
|
146
|
+
- Make input easy to proofread.
|
147
|
+
|
148
|
+
- Make sure all variables are initialized before use.
|
149
|
+
|
150
|
+
- Use debugging compilers.
|
151
|
+
|
152
|
+
- Watch out for off-by-one errors. A common cause of
|
153
|
+
off-by-one errors is an incorrect test.
|
154
|
+
|
155
|
+
- Program defensively.
|
156
|
+
|
157
|
+
- 10.0 times 0.1 is hardly ever 1.0.
|
158
|
+
|
159
|
+
- Floating point numbers are like sandpiles: every time you
|
160
|
+
move one, you lose a little sand and you pick up a little
|
161
|
+
dirt.
|
162
|
+
|
163
|
+
- Pay attention when comparing floating point numbers just
|
164
|
+
for equality.
|
165
|
+
|
166
|
+
- Disorganized code often leads to errors.
|
167
|
+
|
168
|
+
- Make it right before you make it fast(er).
|
169
|
+
|
170
|
+
- Keep it right when you make it fast(er).
|
171
|
+
|
172
|
+
- Make it clear before you make it fast(er).
|
173
|
+
|
174
|
+
- Simplicity and clarity are often of more value than the
|
175
|
+
microseconds possibly saved by clever coding.
|
176
|
+
|
177
|
+
- Don't sacrifice clarity for small gains in efficiency.
|
178
|
+
|
179
|
+
- Let your compiler do the simple optimizations.
|
180
|
+
|
181
|
+
- Make sure special cases are truly special.
|
182
|
+
|
183
|
+
- Keep it simple to make it fast(er).
|
184
|
+
|
185
|
+
- Fundamental improvements in performance are most often
|
186
|
+
made by algorithm changes, not by tuning.
|
187
|
+
|
188
|
+
- A useful and cheap way to measure how a program spends its
|
189
|
+
time is to count how many times each statement is executed.
|
190
|
+
The resulting set of counts is called the program's "profile",
|
191
|
+
a term first used by D. Knuth in 1971.
|
192
|
+
|
193
|
+
- The cost of computing hardware has steadily decreased;
|
194
|
+
software cost has steadily increased.
|
195
|
+
|
196
|
+
- Efficiency should concentrate on reducing the expensive
|
197
|
+
parts of computing.
|
198
|
+
|
199
|
+
- If a program is wrong, it doesn't matter how fast it is.
|
200
|
+
|
201
|
+
- The only reliable documentation of a computer program is
|
202
|
+
the code itself.
|
203
|
+
|
204
|
+
- A comment is of (almost) no value if it is wrong.
|
205
|
+
|
206
|
+
- Make sure comments and code agree.
|
207
|
+
|
208
|
+
- Make every comment count.
|
209
|
+
|
210
|
+
- The indentation of a program should convey the structure of the
|
211
|
+
program to the reader at a glance.
|
212
|
+
|
213
|
+
- Document your data layouts.
|
214
|
+
|
215
|
+
- Programmers have a strong tendency to underrate the importance
|
216
|
+
of good style.
|
217
|
+
|
218
|
+
- Clean code is easier to maintain.
|
219
|
+
|
220
|
+
- Most professional programmers spend much of their time changing
|
221
|
+
their own and other people's code.
|
222
|
+
|
223
|
+
- A program in a high-level language is independent of any particular
|
224
|
+
architecture.
|
225
|
+
|
226
|
+
- Fortran, COBOL and BASIC achieved part of their success by focusing
|
227
|
+
on specific application areas.
|
228
|
+
|
229
|
+
- Many programming languages were explicitly designed as a reaction to
|
230
|
+
the perceived weaknesses of earlier programming languages.
|
231
|
+
|
232
|
+
- Programming requires attention to detail.
|
233
|
+
|
234
|
+
- Bugs in software can leave systems vulnerable to attack.
|
235
|
+
|
236
|
+
- Expertise often disappears as people retire.
|
237
|
+
|
238
|
+
- An API is not a trade secret because it has to be shown to
|
239
|
+
people, in order for them to effectively use that API.
|
240
|
+
|
241
|
+
- Programming languages are how we tell our computers
|
242
|
+
what to do.
|
243
|
+
|
244
|
+
- Few media of creation are so flexible as programming is.
|
245
|
+
|
246
|
+
- Metaprogramming is writing code that writes code.
|
247
|
+
|
248
|
+
- Beim imperativen Programmier-Paradigma ist der Lösungsweg
|
249
|
+
durch eine Folge von Anweisungen (== Befehlen) vorgegeben.
|
250
|
+
|
251
|
+
- The basic principles of good software are —simplicity,
|
252
|
+
clarity and generality.
|
253
|
+
|
254
|
+
- The task of the programmer is to do the best he or she can
|
255
|
+
do with the tools at hand.
|
256
|
+
|
257
|
+
- A well-written program is easier to understand and to modify
|
258
|
+
than a poorly-written one.
|
259
|
+
|
260
|
+
- Code should be clear and simple.
|
261
|
+
|
262
|
+
- Clarity is often achieved through brevity.
|
263
|
+
|
264
|
+
- Even a sensible name (for a function or a variable or a macro)
|
265
|
+
may disguise a broken implementation.
|
266
|
+
|
267
|
+
- Write the clearest code that does the job.
|
268
|
+
|
269
|
+
- Efficiency is all about how much computation resources are
|
270
|
+
used by an algorithm.
|
271
|
+
|
272
|
+
- In computer science it is generally assumed that any source
|
273
|
+
code over 200 lines contains at least one error.
|
274
|
+
|
275
|
+
- Error checking is tedious but important.
|
276
|
+
|
277
|
+
- If possible store configuration and information in yaml or
|
278
|
+
.md files.
|
279
|
+
|
280
|
+
- Write the clearest code that does the job.
|
281
|
+
|
282
|
+
- Parenthesize to resolve ambiguity.
|
283
|
+
|
284
|
+
- Clarity is not the same as brevity.
|
285
|
+
|
286
|
+
- Exercise caution in any expression with side effects.
|
287
|
+
|
288
|
+
- Consistency leads to better programs.
|
289
|
+
|
290
|
+
- Indentation should be idiomatic.
|
291
|
+
|
292
|
+
- Comments should not only agree with code, they should
|
293
|
+
support it.
|
294
|
+
|
295
|
+
- Good code needs fewer comments than bad code.
|
296
|
+
|
297
|
+
- Good style should be a matter of habit.
|
298
|
+
|
299
|
+
- A well-written class should not have to be rewritten in
|
300
|
+
order to integrate a new feature.
|
301
|
+
|
302
|
+
- Arrays are the simplest way to group data.
|
303
|
+
|
304
|
+
- Whenever possible, use the simplest technique which will
|
305
|
+
get the job done.
|
306
|
+
|
307
|
+
- Programmers collect, organize, maintain, and harness
|
308
|
+
knowledge.
|
309
|
+
|
310
|
+
- Maintenance is not a discrete activity, but a routine
|
311
|
+
part of the entire development process.
|
312
|
+
|
313
|
+
- Code also represents knowledge.
|
314
|
+
|
315
|
+
- External identifiers are those we have no control over.
|
316
|
+
|
317
|
+
- The Decorator Pattern adds functionality to things
|
318
|
+
without changing them.
|
319
|
+
|
320
|
+
- Singletons can lead to unnecessary linkage.
|
321
|
+
|
322
|
+
- Duplicate code is a symptom of structural problems.
|
323
|
+
|
324
|
+
- Reversibility is somewhat similar to flexibility.
|
325
|
+
|
326
|
+
- Important requirements are those that define the system.
|
327
|
+
|
328
|
+
- A small body of code has low inertia - it is easy
|
329
|
+
and quick to change.
|
330
|
+
|
331
|
+
- Prototypes are designed to answer just a few questions.
|
332
|
+
|
333
|
+
- Computer languages influence how one thinks about a
|
334
|
+
problem.
|
335
|
+
|
336
|
+
- In heterogeneous environments the advantages of plain text
|
337
|
+
can outweigh all of its drawbacks.
|
338
|
+
|
339
|
+
- Text is the basic raw material of programming.
|
340
|
+
|
341
|
+
- No one writes perfect software.
|
342
|
+
|
343
|
+
- Programming languages are important enabling technologies.
|
344
|
+
|
345
|
+
- It is the caller’s responsibility to pass good data into
|
346
|
+
a function or method.
|
347
|
+
|
348
|
+
- Whoever allocates a resource should be responsible for
|
349
|
+
deallocating it.
|
@@ -5,7 +5,7 @@ body_css_class 'mar0px s2px padt2px VERDANAs'
|
|
5
5
|
background_color :steelblue
|
6
6
|
default_font_size_and_hyperlinks
|
7
7
|
|
8
|
-
|
8
|
+
smaller_width('mar0px pad5px s1em') {
|
9
9
|
fancy1 'Psychologie',
|
10
10
|
'mart1px'
|
11
11
|
p_default_le {
|
@@ -227,6 +227,12 @@ doc_smaller_width('mar0px pad5px s1em') {
|
|
227
227
|
and weakness, so we should take preemptive steps
|
228
228
|
against ill behaviour when we are strong.'
|
229
229
|
}
|
230
|
+
# === Slogans
|
231
|
+
fancy3 'Slogans'
|
232
|
+
div {
|
233
|
+
e '- A fixed action pattern is a sequence of unlearned
|
234
|
+
acts directly linked to a simple stimulus.'
|
235
|
+
}
|
230
236
|
div {
|
231
237
|
back_to_sitemap
|
232
238
|
}
|
@@ -1758,6 +1758,12 @@ doc_smaller_width('mar0px pad0px s0_5em') {
|
|
1758
1758
|
'catalogue of animal genome size data'
|
1759
1759
|
}
|
1760
1760
|
}
|
1761
|
+
# === Slogans
|
1762
|
+
fancy3 'Slogans'
|
1763
|
+
p_default_le {
|
1764
|
+
e 'Scientific literatures often stimulate novel ideas
|
1765
|
+
and polish existing ones.'
|
1766
|
+
}
|
1761
1767
|
# ========================================================================= #
|
1762
1768
|
# === LOCAL LINKS. Local tag. lokal tag
|
1763
1769
|
# ========================================================================= #
|
@@ -96,7 +96,23 @@ preferred_width('mar0px pad0px s0_8em') {
|
|
96
96
|
can terminate a pregnancy nonsurgically within the
|
97
97
|
first 7 weeks.'
|
98
98
|
br
|
99
|
-
earrow 'Uniparentale Fortpflanzung bedeutet im
|
100
|
-
|
99
|
+
earrow 'Uniparentale Fortpflanzung bedeutet im Regelfall
|
100
|
+
auch natürliches Klonen.'
|
101
|
+
br
|
102
|
+
earrow 'The <b>gonads/b> are <b>the major source of sex
|
103
|
+
hormones in humans</b>.'
|
104
|
+
br
|
105
|
+
earrow 'Asexuelle Fortpflanzung hat Vorteile, wenn es
|
106
|
+
darum geht, rasch einen neuen Lebensraum zu besiedeln.'
|
107
|
+
br
|
108
|
+
earrow 'In humans it takes about three weeks
|
109
|
+
for sperm to travel the epididymis duct.'
|
110
|
+
br
|
111
|
+
earrow 'The structure of a sperm cell <b>fits its
|
112
|
+
function</b>.'
|
113
|
+
br
|
114
|
+
earrow 'Quite possibly the most famous example for
|
115
|
+
developmentally arrested cells in humans are
|
116
|
+
the <b>primary oocytes</b>.'
|
101
117
|
}
|
102
118
|
}}
|
@@ -60,8 +60,24 @@ smaller_width('mar0px pad0px s0_8em') {
|
|
60
60
|
br
|
61
61
|
e 'Hydrophobic side chains (of amino acids) go into the core of
|
62
62
|
the molecule – but the main chain remains highly polar.'
|
63
|
+
br
|
64
|
+
e '<b>Computational approaches</b> are <b>particularly well-suited
|
65
|
+
for evaluating configurational entropy</b>.'
|
66
|
+
br
|
67
|
+
e 'Proteins have to exercise a plethora of different functions in
|
68
|
+
the cell.'
|
69
|
+
br
|
70
|
+
e 'The stability of a protein is a balancing act between
|
71
|
+
large, opposing contributions.'
|
72
|
+
br
|
73
|
+
e 'It has been recognized for some time that many plants,
|
74
|
+
animals, and microorganisms that have adapted to environmental
|
75
|
+
extremes also accumulate significant intracellular
|
76
|
+
concentrations of small organic molecules called osmolytes.'
|
63
77
|
}
|
78
|
+
# ========================================================================= #
|
64
79
|
# === Science Links
|
80
|
+
# ========================================================================= #
|
65
81
|
p_default('mars2em') {
|
66
82
|
add_science_links
|
67
83
|
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
#!/usr/bin/ruby -w
|
2
|
+
# Encoding: UTF-8
|
3
|
+
# frozen_string_literal: true
|
4
|
+
# =========================================================================== #
|
5
|
+
# require 'roebe/www/foobar.cgi'
|
6
|
+
# =========================================================================== #
|
7
|
+
require 'cyberweb/autoinclude'
|
8
|
+
|
9
|
+
english('The cell cycle') {
|
10
|
+
created_on '11.02.2024' # Sunday.
|
11
|
+
autoextend
|
12
|
+
ruby_favicon
|
13
|
+
default_template ''
|
14
|
+
body_css_class 'mar0px s2px padt2px VERDANAs'
|
15
|
+
body_css_style 'background-color: #d3d2d1;'
|
16
|
+
default_font_size_and_hyperlinks
|
17
|
+
|
18
|
+
preferred_width('mar0px pad0px s0_8em') {
|
19
|
+
h1 dot(106, 'marr8px')+
|
20
|
+
title?,
|
21
|
+
'mart1px marb0_5em'
|
22
|
+
p_default_le {
|
23
|
+
e 'The ability of organisms to produce more of their own kind
|
24
|
+
is the one characteristic that best distinguishes living
|
25
|
+
things from nonliving matter.'
|
26
|
+
}
|
27
|
+
}}
|