[et_pb_section fb_built=”1″ disabled_on=”off|off|off” admin_label=”Header” _builder_version=”3.22″ parallax=”on” max_width_last_edited=”on|desktop” custom_padding=”0||0|0px|false|false” top_divider_height=”0px” fb_built=”1″ _i=”0″ _address=”0″][et_pb_row column_structure=”1_2,1_2″ _builder_version=”3.25″ custom_padding=”27px|0px|0|0px|false|false” _i=”0″ _address=”0.0″][et_pb_column type=”1_2″ _builder_version=”3.25″ custom_padding=”|||” _i=”0″ _address=”0.0.0″ custom_padding__hover=”|||”][et_pb_text _builder_version=”3.29.3″ text_font=”||||||||” text_font_size=”17px” text_line_height=”1.9em” header_font=”|300|||||||” header_font_size=”60px” header_line_height=”1.4em” header_2_font=”Roboto|300|||||||” header_2_font_size=”50px” header_2_line_height=”1.2em” header_4_font=”|600|||||||” header_4_text_color=”#666666″ header_4_line_height=”2em” max_width=”136%” custom_margin=”|||” header_font_size_tablet=”40px” header_font_size_phone=”32px” header_font_size_last_edited=”on|phone” locked=”off” _i=”0″ _address=”0.0.0.0″]
Full-day workshop:
Anyone can code, but only the fearless can be great — Auguste Gusteau
[/et_pb_text][/et_pb_column][et_pb_column type=”1_2″ _builder_version=”3.25″ custom_padding=”|||” _i=”1″ _address=”0.0.1″ custom_padding__hover=”|||”][et_pb_image src=”https://romania.voxxeddays.com/wp-content/uploads/2019/10/FotografulTAU-022.jpg” align_tablet=”center” align_last_edited=”on|desktop” _builder_version=”3.29.3″ max_width=”80%” border_radii=”on|0%|0%|0%|0%” _i=”0″ _address=”0.0.1.0″][/et_pb_image][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.25″ custom_padding=”41px|0px|22px|0px|false|false” _i=”1″ _address=”0.1″][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” _i=”0″ _address=”0.1.0″ custom_padding__hover=”|||”][et_pb_text _builder_version=”3.29.3″ custom_padding=”||0px|||” hover_enabled=”0″ _i=”0″ _address=”0.1.0.0″]
This workshop will serve as a “tour of Clojure” where you’ll explore its features and go over the unfamiliarity of the syntax to focus on this question: does it fit your way of thinking and solving problems
[/et_pb_text][/et_pb_column][/et_pb_row][et_pb_row column_structure=”1_3,1_3,1_3″ _builder_version=”3.25″ custom_padding=”0|0px|0|0px|false|false” _i=”2″ _address=”0.2″][et_pb_column type=”1_3″ _builder_version=”3.25″ custom_padding=”|||” _i=”0″ _address=”0.2.0″ custom_padding__hover=”|||”][et_pb_text _builder_version=”3.29.3″ text_font=”Sansation|300|||||||” link_font=”||||||||” ul_font=”||||||||” ol_font=”||||||||” quote_font=”||||||||” header_font=”||||||||” _i=”0″ _address=”0.2.0.0″]
Why this workshop?
Clojure is different from any other mainstream language you’ll encounter in conferences in that it is a Lisp and a successful one at that.
Detached from the norms of C-style syntax, it allows expressing business logic and code in a succinct way through data.
The data structure literals and strong standard library help model problems and solve them in a bottom-up way, by composing functions that transform this data into a solution, while the REPL gives the ability to evaluate every form along the way to help shape understanding.
Because of its emphasis on immutability, it is easy to reason about the code which gives a competitive advantage when thinking about concurrency. And when synchronization of concurrent operations is needed, Clojure provides powerful abstractions to safely handle changes and think about logic only.
[/et_pb_text][/et_pb_column][et_pb_column type=”1_3″ _builder_version=”3.25″ custom_padding=”|||” _i=”1″ _address=”0.2.1″ custom_padding__hover=”|||”][et_pb_text _builder_version=”3.29.3″ text_font=”|300|||||||” custom_margin=”|||65px” _i=”0″ _address=”0.2.1.0″]
What will you learn?
We’ll go over what I like to refer to as the 5 pillars of Clojure by solving short problems:
1. Lisp: syntax and philosophy
2. Immutability: Clojure’s data structures and core/std lib
3. Concurrency: atoms, agents and refs
4. Polymorphism: multi-methods and protocols/records
5. Macros: with great power…
[/et_pb_text][/et_pb_column][et_pb_column type=”1_3″ _builder_version=”3.25″ custom_padding=”|||” _i=”2″ _address=”0.2.2″ custom_padding__hover=”|||”][et_pb_text _builder_version=”3.29.3″ text_font=”Sansation|300|||||||” link_font=”||||||||” ul_font=”||||||||” ol_font=”||||||||” quote_font=”||||||||” header_font=”||||||||” _i=”0″ _address=”0.2.2.0″]
Who is the trainer?
Arnaud Bos is a software developer and consultant at MonkeyPatch, in Toulouse (France), and the organizer of the Toulouse JUG.
Starting his career as a mobile engineer, he quickly transitioned to backend and Web services development with a focus on data engineering and distributed systems problems in Python, Java and Clojure.
Arnaud is currently working with clients in the space industry to provide solutions to store and transfer large amounts of earth observation data and provide ways for teams to access and run analysis and experiments on it.
He occasionally writes blog posts (http://www.arnaudbos.com/) and tweets and gives talks about his favourites topics here and there.
Who is it for?
This workshop is for any functional programming curious/enthusiast developer.
Although we will focus mainly on Clojure itself and it might seem like a better fit for backend developers because of the JVM, all the concepts learnt during the workshop will be applicable to fronted development too thanks to ClojureScript!
[/et_pb_text][/et_pb_column][/et_pb_row][/et_pb_section][et_pb_section fb_built=”1″ admin_label=”Speakers” _builder_version=”3.22″ background_color_gradient_direction=”121deg” background_size=”initial” background_position=”top_left” custom_padding=”0|0px|54px|0px|false|false” fb_built=”1″ _i=”1″ _address=”1″][et_pb_row _builder_version=”3.25″ custom_padding=”0|0px|27px|0px|false|false” _i=”0″ _address=”1.0″][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” _i=”0″ _address=”1.0.0″ custom_padding__hover=”|||”][et_pb_text _builder_version=”3.29.3″ text_font=”|300|||||||” _i=”0″ _address=”1.0.0.0″]
Technical requirements
You will need to bring your own laptop with the following pre-reqs installed: IntelliJ IDEA Community edition (https://www.jetbrains.com/idea/download/index.html) with the Cursive IDE (https://cursive-ide.com/userguide/).
You can get a Free, Non-commercial license of Cursive valid for 6 months on the website.
[/et_pb_text][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.25″ custom_padding=”0|0px|27px|0px|false|false” _i=”1″ _address=”1.1″][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” _i=”0″ _address=”1.1.0″ custom_padding__hover=”|||”][et_pb_button button_url=”https://romania.voxxeddays.com/product/combo-voxxed-days-cluj-napoca-clojure-full-day-workshop-october-30-2019-conference-day-october-31-2019/” url_new_window=”on” button_text=”Buy combo ticket ” button_alignment=”center” _builder_version=”3.29.3″ custom_button=”on” button_text_size=”20px” button_text_color=”#ffffff” button_bg_color=”#18b9f0″ button_border_width=”8px” button_border_color=”rgba(0,0,0,0)” button_border_radius=”0px” button_letter_spacing=”0px” button_font=”|700||on|||||” button_use_icon=”off” custom_margin=”40px|||” box_shadow_style=”preset1″ button_text_color_hover=”#ffffff” button_border_radius_hover=”100px” button_letter_spacing_hover=”3px” locked=”off” button_text_size__hover_enabled=”off” button_one_text_size__hover_enabled=”off” button_two_text_size__hover_enabled=”off” button_text_color__hover_enabled=”on” button_text_color__hover=”#ffffff” button_one_text_color__hover_enabled=”off” button_two_text_color__hover_enabled=”off” button_border_width__hover_enabled=”off” button_one_border_width__hover_enabled=”off” button_two_border_width__hover_enabled=”off” button_border_color__hover_enabled=”off” button_one_border_color__hover_enabled=”off” button_two_border_color__hover_enabled=”off” button_border_radius__hover_enabled=”on” button_border_radius__hover=”0px” button_one_border_radius__hover_enabled=”off” button_two_border_radius__hover_enabled=”off” button_letter_spacing__hover_enabled=”on” button_letter_spacing__hover=”0px” button_one_letter_spacing__hover_enabled=”off” button_two_letter_spacing__hover_enabled=”off” button_bg_color__hover_enabled=”off” button_one_bg_color__hover_enabled=”off” button_two_bg_color__hover_enabled=”off” _i=”0″ _address=”1.1.0.0″][/et_pb_button][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.25″ custom_padding=”27px|0px|0|0px|false|false” _i=”2″ _address=”1.2″][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” _i=”0″ _address=”1.2.0″ custom_padding__hover=”|||”][et_pb_text _builder_version=”3.27.4″ text_font=”||||||||” text_font_size=”20px” text_line_height=”1.9em” header_font=”||||||||” header_2_font=”Roboto|300|||||||” header_2_font_size=”50px” header_2_line_height=”1.2em” max_width=”700px” max_width_last_edited=”on|desktop” header_2_font_size_tablet=”40px” header_2_font_size_phone=”32px” header_2_font_size_last_edited=”on|phone” locked=”off” _i=”0″ _address=”1.2.0.0″]
Trainer
[/et_pb_text][/et_pb_column][/et_pb_row][et_pb_row column_structure=”1_2,1_2″ _builder_version=”3.25″ _i=”3″ _address=”1.3″][et_pb_column type=”1_2″ _builder_version=”3.25″ custom_padding=”|||” _i=”0″ _address=”1.3.0″ custom_padding__hover=”|||”][et_pb_team_member name=”ARNAUD BOS” position=”Software developer @MonkeyPatch and Toulouse JUG Leader” image_url=”https://voxxedromania.ams3.cdn.digitaloceanspaces.com/2019VDCLUJ/Speakers/arnaud-bos-700.jpg” _builder_version=”3.29.3″ header_level=”h5″ header_font=”Roboto||||||||” header_text_align=”center” header_font_size=”24px” header_line_height=”1.2em” body_font=”||||||||” body_text_align=”center” body_font_size=”16px” body_line_height=”1.9em” text_orientation=”left” max_width=”56%” custom_padding=”||0px|||” animation_direction=”bottom” border_radii_image=”on|100%|100%|100%|100%” locked=”off” _i=”0″ _address=”1.3.0.0″][/et_pb_team_member][/et_pb_column][et_pb_column type=”1_2″ _builder_version=”3.25″ custom_padding=”|||” _i=”1″ _address=”1.3.1″ custom_padding__hover=”|||”][/et_pb_column][/et_pb_row][et_pb_row _builder_version=”3.25″ _i=”4″ _address=”1.4″][et_pb_column type=”4_4″ _builder_version=”3.25″ custom_padding=”|||” _i=”0″ _address=”1.4.0″ custom_padding__hover=”|||”][et_pb_button button_url=”https://romania.voxxeddays.com/cluj-napoca/2019-10-30/#speakers” url_new_window=”on” button_text=”SEE ALL OUR SPEAKERS” button_alignment=”center” _builder_version=”3.22.1″ custom_button=”on” button_font=”||||||||” button_use_icon=”off” box_shadow_style=”preset1″ button_text_color_hover=”#ffffff” button_bg_color_hover=”#18b9f0″ button_text_size__hover_enabled=”off” button_one_text_size__hover_enabled=”off” button_two_text_size__hover_enabled=”off” button_text_color__hover_enabled=”on” button_text_color__hover=”#ffffff” button_one_text_color__hover_enabled=”off” button_two_text_color__hover_enabled=”off” button_border_width__hover_enabled=”off” button_one_border_width__hover_enabled=”off” button_two_border_width__hover_enabled=”off” button_border_color__hover_enabled=”off” button_one_border_color__hover_enabled=”off” button_two_border_color__hover_enabled=”off” button_border_radius__hover_enabled=”off” button_one_border_radius__hover_enabled=”off” button_two_border_radius__hover_enabled=”off” button_letter_spacing__hover_enabled=”off” button_one_letter_spacing__hover_enabled=”off” button_two_letter_spacing__hover_enabled=”off” button_bg_color__hover_enabled=”on” button_bg_color__hover=”#18b9f0″ button_one_bg_color__hover_enabled=”off” button_two_bg_color__hover_enabled=”off” _i=”0″ _address=”1.4.0.0″][/et_pb_button][/et_pb_column][/et_pb_row][/et_pb_section]