Lies, damned lies and statistics

The next time someone criticises zynthian without offering to help, we can point them to this snapshot showing how many lines of code have been crafted by the dedicated development team and ask how many they might want to contribute. Maybe they can try to add to the 129190 blank lines in our Python code. (I like to think I wrote many of those :wink:.)

Language files blank comment code
Python 2681 129190 178341 572219
C 126 8516 41668 217362
JavaScript 870 41810 36032 210599
CSS 152 3143 2580 54620
JSON 324 44 0 37526
HTML 161 2056 305 27266
Text 1951 1869 0 23904
C++ 46 3273 1749 20956
C/C++ Header 167 4225 7610 20437
SVG 57 134 31 15860
LESS 100 1711 1973 11891
Bourne Shell 252 1463 1789 8605
Markdown 52 1714 2 4496
D 29 0 0 3330
SCSS 30 186 111 2613
PO File 17 1181 1341 2512
XML 53 554 54 2158
make 29 737 475 2158
reStructuredText 35 1203 655 2149
CMake 52 353 210 1619
YAML 43 152 24 1465
Objective-C++ 2 94 27 575
Meson 4 89 52 509
Bourne Again Shell 6 58 29 309
Windows Module Definition 1 21 0 138
PowerShell 3 52 97 123
Arduino Sketch 4 39 113 97
Fish Shell 2 26 28 84
Vuejs Component 1 4 0 81
Cython 1 23 0 66
CoffeeScript 1 0 10 58
INI 3 11 0 55
C Shell 2 18 10 24
TypeScript 8 3 0 18
Tcl/Tk 5 0 0 15
Perl 1 5 0 12
Dockerfile 1 6 0 10
Ruby 1 2 0 8
DOS Batch 4 0 0 4
Standard ML 1 0 0 2
Windows Resource File 2 0 0 2
CSV 1 0 0 1
-
SUM: 7281 203965 275316 1245936

Resuts from cloc . --timeout=0 --md

12 Likes

Too much Perl.

2 Likes

Not enough Quake C

Why both Scss, Less and Css :face_with_raised_eyebrow: dependencies?

1 Like

Why are there so many languages involved? Quite unusual for one project, isn’t it? Is it because of all the synthesizers and effects that carry their own baggage/history?

Not really. These stats are “damned lies”, as the title says :rofl:

We use 3 programming languages:

  • Python => Zynthian UI, Webconf (tornado)
  • C / C++ => Zyncore, Zynseq, Zynsampler, and other low level libraries
  • Shell Script Languages (mostly Bash) => System management, updating scripts, etc.

And the typical web application stack for webconf:

  • HTML templates
  • CSS / LESS / SCSS => Yes, we generate by hand from SCSS and LESS and save the resulting CSS as project files. Bad praxis.
  • Javascript

Of course, some:

  • Makefile
  • CMakefile
  • etc.

to help building the C/C++ libraies.

And we use some specific formats for config data, snapshots, etc.:

  • JSON => Snapshots, engines DB, presets cache
  • YAML => Config files for PD patches, extended SF2, etc.
  • XML => Pianoteq default config files?

And of course, our beloved LV2’s TTL files that are missing from this list!

All the rest in the list are, more or less, damned lies! :grin:

Enjoy!

3 Likes

the TXT files are not commented: bad practice :laughing: