![Page 1: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/1.jpg)
C language in our world
6.5. 2019 FI MUNIBrno
@jurajmichalekhttps://georgik.rocks
https://www.ysofters.com
![Page 2: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/2.jpg)
Grab the source code
https://github.com/ysoftdevs/cpp-examples
![Page 3: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/3.jpg)
Who am I?
Blog: https://georgik.rocks
YSofters Blog: https://www.ysofters.com
![Page 4: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/4.jpg)
C language todayDocker
Console: Minunit, Check, CurlUI: Allegro5, SDL2, GTK3, QT
Server: CUPSGradle
IDEs, NuGet, IoTJenkins, Bamboo, TeamCity
Node, Go language2xFI MUNI theses
![Page 5: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/5.jpg)
Technologies influencing each other
![Page 6: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/6.jpg)
Programming languages we know strongly influence the way we think about programming.
- JS Conf 2014 - Jenna Zeigen
![Page 7: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/7.jpg)
Breeze of fresh ideas starts blowingfrom other technologies...
![Page 8: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/8.jpg)
Containers- Linux based, Windows based- hub.docker.com
![Page 9: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/9.jpg)
![Page 10: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/10.jpg)
Allegro
![Page 11: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/11.jpg)
![Page 12: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/12.jpg)
Allegro 5
Win, Lin, Mac
iOS, Android
http://alleg.sourceforge.net/a5docs/refman/
![Page 13: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/13.jpg)
Initialization
al_init();
![Page 14: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/14.jpg)
Graphic environment
al_create_display(int w, int h)
![Page 16: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/16.jpg)
Conemu Maximus 5
Powerful terminal for Windowsuse with PowerShell, Python, Ruby…
https://code.google.com/p/conemu-maximus5/
![Page 18: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/18.jpg)
![Page 19: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/19.jpg)
Made with SDL
![Page 20: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/20.jpg)
Made with SDL
![Page 22: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/22.jpg)
![Page 23: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/23.jpg)
![Page 24: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/24.jpg)
Multiplatform
SDL officially supports Windows, Mac OS X, Linux, iOS, and Android.
Support for other platforms may be found in the source code.
![Page 25: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/25.jpg)
SDL versions
1.2 stable - rock solid
2.x development - new features
![Page 26: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/26.jpg)
SDL_init(flags)
SDL_INIT_TIMER - The timer subsystemSDL_INIT_AUDIO - The audio subsystemSDL_INIT_VIDEO - The video subsystemSDL_INIT_CDROM - The cdrom subsystemSDL_INIT_JOYSTICK - The joystick subsystemSDL_INIT_EVERYTHING - All of the aboveSDL_INIT_NOPARACHUTE - Prevents SDL from catching fatal signalsSDL_INIT_EVENTTHREAD - Runs the event manager in a separate thread
![Page 27: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/27.jpg)
Quit application
SDL_quit()
![Page 28: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/28.jpg)
Window
SDL_CreateWindow("Hello World!", 100, 100, 640, 480, SDL_WINDOW_SHOWN);
![Page 29: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/29.jpg)
Load bitmap
SDL_Surface *bmp = nullptr;bmp = SDL_LoadBMP("smajlik.bmp");
![Page 30: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/30.jpg)
Visual data
SDL_RendererSDL_Texture
![Page 31: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/31.jpg)
Keyboard
SDL_PollEvent(SDL_Event *event)
event.key.keysym.sym
![Page 32: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/32.jpg)
Timer
SDL_TimerID SDL_AddTimer( Uint32 interval, SDL_TimerCallback callback, void* param)
![Page 33: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/33.jpg)
Mouse
SDL_GetMouseState(*x, *y);
![Page 34: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/34.jpg)
Text
Not implemented
![Page 35: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/35.jpg)
Extensions
extension for many languages:
C++, Java, PHP, Python, Ruby
![Page 37: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/37.jpg)
Kivy.org
iOSAndroidWindows DesktopWindows PhoneRaspberry Pi
Cross-platform development of smartphone application with the Kivy framework - Master thesis - Mgr. Ondřej Chrastina: http://is.muni.cz/th/430596/fi_m/
![Page 38: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/38.jpg)
Gradle Native BuildsC/C++, Objective-C
http://gradle.org/getting-started-native/
![Page 39: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/39.jpg)
Build tool
Exensible by plugins
Power of Domain Specific Language
![Page 41: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/41.jpg)
Project structure
Convention over configuration
Decrease number of decisions that developers need to makehttp://en.wikipedia.org/wiki/Convention_over_configuration
![Page 42: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/42.jpg)
C plugin
![Page 43: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/43.jpg)
Gradle command line & GUI
![Page 44: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/44.jpg)
gradle components
![Page 45: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/45.jpg)
Gradle build Linux package
Netflix Nebula OS Package plugin:http://plugins.gradle.org/plugin/nebula.os-package
![Page 46: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/46.jpg)
![Page 47: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/47.jpg)
Build package
Note: Gradle supports abbreviation. You can write hE instead of helloExecutable
![Page 48: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/48.jpg)
SDL2 and Android
Android Studio + NDK + Gradlehttps://github.com/georgik/sdl2-android-examplehttps://georgik.rocks/tag/sdl2/
![Page 50: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/50.jpg)
YSoft + CUPS + QT
Thesis: Dávid Kaya - Linux client for YSoft SafeQhttps://is.muni.cz/th/409878/fi_b/
![Page 52: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/52.jpg)
IDE & Text editors
![Page 54: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/54.jpg)
Sublime Text
![Page 55: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/55.jpg)
Visual Studio Code
Code editing. Redefined. - https://code.visualstudio.com/
![Page 56: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/56.jpg)
![Page 57: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/57.jpg)
Toolchain detection
![Page 58: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/58.jpg)
Edit project
![Page 59: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/59.jpg)
Leverage Refactor
![Page 60: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/60.jpg)
Use Debugger
![Page 61: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/61.jpg)
Fine tune
Disabled by default for all JetBrains tools :-(
![Page 62: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/62.jpg)
C in embedded and IoT world
![Page 64: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/64.jpg)
LampESP example
https://github.com/georgik/LampESP- OTA- WifiManager- Web Server- MQTT Client (works also with Bluemix)- TaskScheduler (async style)More info: http://georgik.rocks/category/iot/
![Page 66: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/66.jpg)
Monkey C
Garmin Connect IQ- https://developer.garmin.com/connect-iq
![Page 67: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/67.jpg)
Iot-inc - podcast
http://www.iot-inc.com/category/mediatype/podcasts/
![Page 68: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/68.jpg)
Continuous integration
![Page 69: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/69.jpg)
Jenkins
Hit for Windows users: Do not install Jenkins into path with special characters and blank space.E.g: Wrong: C:\Program Files (x86)\Jenkins. Correct: Use C:\projects\jenkins
![Page 70: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/70.jpg)
From desktop to cloud
Software is slowSoftware is hard to writeSoftware is hard to scale
![Page 71: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/71.jpg)
Go
http://golang.org
Authors:● Ken Thompson - known for Unix● Rob Pike - known for UTF-8● Robert Griesemer
![Page 72: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/72.jpg)
Main features of languagesyntax patterns from dynamic languagesperformance of Cblazing fast compilationoutput one binaryconcurrencylibraries from internet (e.g. Github)works on: Mac, Linux, Windows and more...
![Page 73: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/73.jpg)
Materials
Andreas Krennmairhttp://synflood.at/tmp/golang-slides/mrmcd2012.html#1
Steve Franciahttp://spf13.com/presentation/first-go-app/
![Page 74: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/74.jpg)
Thanks to artistsimages used in this presentation were published under creative commons license. Links to originals:
http://www.flickr.com/photos/fatboyke/3405148748/ http://www.flickr.com/photos/teveve/6301993588/ http://www.flickr.com/photos/stevewilhelm/6242822362/ http://en.wikipedia.org/wiki/Chess http://www.flickr.com/photos/akosma/9486807123/ http://www.flickr.com/photos/charlestilford/6362884553/ http://www.flickr.com/photos/ciat/6917871707/ http://www.flickr.com/photos/anieto2k/4455227465/ http://www.geograph.ie/photo/1113036 http://commons.wikimedia.org/wiki/File:Dark_Sky_(3274525313).jpg http://www.elfwood.com/~arknott/Red-Dragon.2539297.html http://commons.wikimedia.org/wiki/File:Wolf-River-swamp-North-Mississippi.jpg http://pako0007.deviantart.com/art/Zombie-Imp-2-267822507 http://www.flickr.com/photos/bogenfreund/367091428/ http://www.flickr.com/photos/infinite-magic/4016608841/ http://www.flickr.com/photos/lennysan/4403695597/ http://www.flickr.com/photos/avaverino/4870587458/
![Page 76: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/76.jpg)
Swiss knife tool for web https://curl.haxx.se/
Generate source code:curl http://www.ysoft.com -o index.html --libcurl download.c
![Page 77: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/77.jpg)
The future is already here — it's just not very evenly distributed.
![Page 78: georgik.rocks @jurajmichalek C language...SDL_init(flags) SDL_INIT_TIMER - The timer subsystem SDL_INIT_AUDIO - The audio subsystem SDL_INIT_VIDEO - The video subsystem SDL_INIT_CDROM](https://reader033.vdocuments.net/reader033/viewer/2022041519/5e2d2a22f5f325562f660575/html5/thumbnails/78.jpg)
YSofters
Twitter: @ysoftdevsGitHub: github.com/ysoftdevs
Blog: www.ysofters.comThesis: [email protected]