From 63a83630743eb05344b7d9fa20f43f60ae54dcc1 Mon Sep 17 00:00:00 2001 From: Leone25 <39310565+Leone25@users.noreply.github.com> Date: Wed, 3 Jul 2024 18:55:16 +0200 Subject: [PATCH 1/6] added database support --- database/database.sql | 93 +++++++++++++++++++++++++++++++- database/update/1.sql | 91 +++++++++++++++++++++++++++++++- src/Database.php | 120 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 302 insertions(+), 2 deletions(-) diff --git a/database/database.sql b/database/database.sql index c53adc6..a52a7ea 100644 --- a/database/database.sql +++ b/database/database.sql @@ -60,5 +60,96 @@ create table notes ( primary key (uid, candidate_id) ); +create table if not exists positions ( + id varchar not null primary key, + available integer not null +); + +-- this is generic, but actually used only for the positions aka anywhere the text can be dynamically changed +create table if not exists translations ( + id varchar not null, + lang varchar not null, + value varchar not null, + unique(id, lang) +); + +insert into positions (id, available) values + ('hardware-repair', 1), + ('electronics', 1), + ('python-software-dev', 1), + ('php-software-dev', 1), + ('javascript-software-dev', 1), + ('vuejs-software-dev', 1), + ('machine-learning-engineer', 1), + ('sysadmin', 1), + ('communication-and-social', 1), + ('digital-content-creation', 1), + ('creative-reuse', 1), + ('other', 1); + +insert into translations (id, lang, value) values + ('position.hardware-repair.name', 'it', 'Riparazione hardware'), + ('position.electronics.name', 'it', 'Elettronica'), + ('position.python-software-dev.name', 'it', 'Sviluppo software Python'), + ('position.php-software-dev.name', 'it', 'Sviluppo software PHP'), + ('position.javascript-software-dev.name', 'it', 'Sviluppo software JavaScript'), + ('position.vuejs-software-dev.name', 'it', 'Sviluppo software Vue.js'), + ('position.machine-learning-engineer.name', 'it', 'Machine Learning Engineer'), + ('position.sysadmin.name', 'it', 'Sysadmin'), + ('position.communication-and-social.name', 'it', 'Comunicazione e social'), + ('position.digital-content-creation.name', 'it', 'Creazione di contenuti digitali'), + ('position.creative-reuse.name', 'it', 'Riuso creativo'), + ('position.other.name', 'it', 'Altro'), + ('position.hardware-repair.name', 'en', 'Hardware repair'), + ('position.electronics.name', 'en', 'Electronics'), + ('position.python-software-dev.name', 'en', 'Python software development'), + ('position.php-software-dev.name', 'en', 'PHP software development'), + ('position.javascript-software-dev.name', 'en', 'JavaScript software development'), + ('position.vuejs-software-dev.name', 'en', 'Vue.js software development'), + ('position.machine-learning-engineer.name', 'en', 'Machine Learning Engineer'), + ('position.sysadmin.name', 'en', 'Sysadmin'), + ('position.communication-and-social.name', 'en', 'Communication and social'), + ('position.digital-content-creation.name', 'en', 'Digital content creation'), + ('position.creative-reuse.name', 'en', 'Creative reuse'), + ('position.other.name', 'en', 'Other'), + ('position.hardware-repair.description', 'it', 'Descrivi qualsiasi tua esperienza di riparazione di computer (fissi o portatili), o assemblaggio, o saldatura di componenti elettronici.\nSe non sai qualcosa, cosa fai per imparare in autonomia? Puoi anche fornire degli esempi.\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a riparare computer.'), + ('position.electronics.description', 'it', 'Uno degli obiettivi del team è la progettazione di strumenti elettronici per la diagnostica a basso livello e il riuso dell''hardware recuperato.\nQual è il tuo rapporto con il mondo dell''elettronica? Ti interessa di più l''elettronica digitale o analogica (specialmente di potenza) o ti interessano entrambe?\nSe hai mai realizzato qualche circuito o progetto oltre a quelli nei laboratori didattici, parlane con riferimento anche al metodo con cui è stato realizzato (breadboard, millefori, circuito stampato, componenti through-hole o SMD, etc...).\nIndica anche se hai dimestichezza con qualche software di Electronic Design Automation (progettazione, simulazione, test e verifica, etc...).\nMenziona anche quanto tempo potresti dedicare al team e se fai qualcos''altro di interessante nel tempo libero oltre a progettare circuiti.'), + ('position.python-software-dev.description', 'it', 'Descrivi qualsiasi tua esperienza nel programmare in Python, e se hai un account su Github non esitare a condividerlo nella tua lettera!\nMolti degli strumenti interni del team sono stati creati con python, per esempio la [Peracotta](https://github.com/WEEE-Open/peracotta) ed il [Pesto](https://github.com/WEEE-Open/pesto). Se conosci come lavorare con qt ed interagire con API, sei la persona che stiamo cercando!\nPotresti menzionare se hai mai usato virtual environments, collaborato con qualcuno su un progetto software, o se sai scrivere in altri linguaggi che usiamo nel team, come JavaScript, PHP e Bash o altri ancora.\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.php-software-dev.description', 'it', 'I principali progetti PHP del team sono [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) e [crauto](https://github.com/WEEE-Open/crauto), puoi darci già un''occhiata per sapere a cosa vai incontro.\nDescrivi qualsiasi tua esperienza nel programmare in PHP, e se hai un account su Github non esitare a condividerlo nella tua lettera!\nVa bene anche "per l''esame di ... ho creato un programma che fa ..." o "ho fatto il sito web per la panetteria all''angolo".\nSe conosci anche altri linguaggi non esitare a condividere la tua esperienza.\nPuoi anche menzionare se conosci altri linguaggi di programmazione o hai mai partecipato ad altri progetti collaborativi.\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.javascript-software-dev.description', 'it', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Node.js. Cerchiamo persone capaci di lavorare con express, MySQL e creare API.\nParla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (backend, app NodeJS, e frontend, sia vanilla JS, sia framework, in particolare Vue.js). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.vuejs-software-dev.description', 'it', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Vue.js. Cerchiamo persone capaci di creare SPA e PWA con Vue.js integrate con servizi backend.\nParla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (frontend, vanilla JS, Vue.js or any other framework, e backend, NodeJS). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.machine-learning-engineer.description', 'it', 'Dal 2021-2022, grazie all''esperienza acquisita da alcuni membri del team in materia, e al lancio del nostro progetto di software per studenti, cerchiamo una figura che possa occuparsi della creazione di alcuni modelli volti a migliorare l''esperienza utente delle piattaforme web che abbiamo intenzione di sviluppare, in particolare nell''ambito del Natural Language Processing.\nSe hai delle conoscenze riguardo a qualcuno tra Python, PyTorch, Tensorflow, Keras, Jupyter Notebook e GitHub, stiamo cercando proprio te!\nSe in più sai ricercare paper scientifici su nuove tecnologie su ArXiv o simili, o hai intenzione di imparare a farlo, fantastico!\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a progettare intelligenze artificiali.'), + ('position.sysadmin.description', 'it', 'Il compito dei sysadmin è assicurarsi che gli strumenti informatici a cui il team si appoggia per le sue operazioni siano al massimo della loro efficienza.\nPer fare questo gestiscono i server che ospitano i nostri servizi, collaborano con gli sviluppatori per deployare e aggiornare i software che creiamo, monitorano lo stato di salute della nostra infrastruttura e si assicurano che i nostri dati siano protetti da attacchi e perdite.\nI sysadmin seguono l''intero ciclo di vita dei servizi, dalla configurazione del server tramite Ansible, passando per la containerizzazione e gestione dei servizi, alle normali procedure di manutenzione.\nLe competenze esercitate sono una generale conoscenza di Ansible e della containerizzazione, familiarità con la gestione e configurazione di software per server comuni come Nginx, PHP e MariaDB/PostgreSQL e maneggevolezza con il terminale Linux.\nSe hai esperienza con alcune di queste cose, parlane liberamente.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre ad amministrare server.'), + ('position.comunication-and-social.description', 'it', 'Hai buone capacità di comunicazione e organizzazione, ti piace il nostro team e vuoi aiutarci a migliorare la nostra immagine? Questo è il posto che fa per te!\nCerchiamo qualcuno che possa svolgere le seguenti mansioni:\n- Scrittura e pubblicazione di post e storie per i nostri social\n- Programmazione temporale dei contenuti\n- Definizione della strategia di comunicazione in generale\n- Brainstorming di idee per podcast e video tematici\n- Intrattenimento di rapporti con terzi, altre associazioni e ospiti\nTi troverai a lavorare in sinergia con i creatori di contenuti digitali, che si occuperanno di produrre materiale grafico e video (o potrai occupartene tu stesso se ti va e ne sei capace).\n Ora parlaci di te.\n Descrivi qualsiasi tua esperienza nel gestire pagine o profili (e.g. personali, di attività commerciali, di meme nonsense, etc...) sui social network, in particolare Facebook e Instagram.\n Menziona anche i risultati raggiunti con tali attività promozionali, se possibile.\n Se dovessi spiegare in due righe cosa fa il team, cosa diresti?\n Indica anche quanto tempo potresti dedicare a queste attività e se hai qualche altro interesse.'), + ('position.digital-content-creation.description', 'it', 'Sprigiona la tua vena creativa entrando nel nostro team! Abbiamo bisogno di figure che si occupino di realizzare:\n- Design di manifesti, infografiche, biglietti da visita\n- Elementi grafici per pagine web e social network\n- Sfondi, icone e immagini personalizzate per i nostri software\n- Redesign e modding dei case dei computer riparati\n- Jingle e motivi musicali per i nostri video\n Se almeno una, o più di una, di queste attività di interessano, questo è il ruolo adatto.\n Parla di qualsiasi esperienza artistica, inclusi progetti personali (anche piccoli) o esami sostenuti.\n Se vuoi mostrarci alcuni dei tuoi lavori passati, abbozzi, concepts o hai idee su come migliorare il volto del team, non esitare!\n Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), + ('position.creative-reuse.description', 'it', 'Non tutti i computer che ci arrivano sono riparabili, ma vorremmo comunque minimizzare la quantità di materiale che finisce nel bidone.\n Se hai manualità e/o esperienze nel riuso creativo e/o making è il momento di dirlo.\n Puoi anche aggiungere se hai idee su come potremmo riutilizzare case vuoti, schede madri dall''estetica peculiare o i piatti a specchio di hard disk rotti.\nAccenna anche a che metodo seguiresti per progettare queste cose.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), + ('position.other.description', 'it', 'Stupiscici.'), + ('position.hardware-repair.description', 'en', 'Describe anything about your experience in computer repairs (desktop or laptops), or building computers, or soldering of electronic components.\nIf you don''t know something, what do you do to learn it yourself, usually? You can give us some examples as well.\n If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\n Mention how much time you have for team activities, too, and if you have any other hobby or interests other than repairing computers.'), + ('position.electronics.description', 'en', 'One of the goals of the team is to develop electronic tools for low-level hardware diagnostics and the reuse of recovered hardware.\nWhat''s your relationship with electronics? Are you more interested in digital or analog (especially power) electronics do you like both equally?\nIf you ever made any electronic circuit or project other than those for academic courses, tell us. Explain also the method you''ve used to build them (breadboard, prototype board, PCB, through-hole components or SMD, etc...)\nTell us if you have experience with any Electronic Design Automation software (project, simulation, test and verification, etc...).\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than designing circuits.'), + ('position.python-software-dev.description', 'en', 'Describe any prior experience you have in coding in Python, and don''t hesitate sharing your Github account in your letter if you have one!\nMany of the internal tools of the team have been created with python, for example [Peracotta](https://github.com/WEEE-Open/peracotta) and [Pesto](https://github.com/WEEE-Open/pesto). If you know how to work with qt and interact with APIs, you are the person we are looking for!\nYou could mention if you have ever used virtual environments, collaborated with someone else on a software project, or if you can code in other programming languages.\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.php-software-dev.description', 'en', 'Our main PHP projects are [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) and [crauto](https://github.com/WEEE-Open/crauto), you can have a look so you know what you''re going to work on.\nDescribe any prior experience you have in coding in PHP, and don''t hesitate sharing your Github account in your letter if you have one!\nEven "for the exam of ... I created a program that does ..." or "I made the website for the bakery around the corner" are fine.\nIf you know other programming languages, don''t hesitate to share your experience.\nYou can also mention whether you know other programming languages or have ever participated to other collaborative projects.\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.javascript-software-dev.description', 'en', 'Since a couple of years we started migrating some of our projects to Node.js. We are looking for people capable of working with express, MySQL and creating APIs.\nTalk about any experience you have with JavaScript (backend, NodeJS apps, and frontend, vanilla JS, or any framework, especially Vue.js). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter!\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.vuejs-software-dev.description', 'en', 'Since a couple of years we started migrating some of our projects to Vue.js. We are looking for people capable of creating SPAs and PWAs with Vue.js integrated with backend services.\nTalk about any experience you have with JavaScript (frontend, vanilla JS, Vue.js or any other framework, and backend, NodeJS). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter!\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.machine-learning-engineer.description', 'en', 'From 2021-2022, thanks to the experience gained by some team members on the subject, and the launch of our project of software for students, we are looking for a figure who can take care of the creation of some models aimed at improving the user experience of the web platforms we intend to develop, in particular in the field of Natural Language Processing.\nIf you know any of Python, PyTorch, Tensorflow, Keras, Jupyter Notebook and GitHub, we are looking for you!\nIf you can also research scientific papers on new technologies on ArXiv or similar platforms, or you want to learn how to do it, great!\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests besides designing AIs.'), + ('position.sysadmin.description', 'en', 'Our sysadmins ensure that IT tools - which are essential for the team - are operating at peak efficiency.\nTo do this, they manage our servers, collaborate with developers to deploy and update the software we made, monitor the health of our infrastructure and ensure that our data is safe from attacks and other disasters.\nSysadmins oversee the entire service life cycle, from server configuration through Ansible, to containerization and service management, to routine maintenance procedures.\nThe competences you will use are general knowledge of Ansible and containes, familiarity with managing and configuring common server software like Nginx, PHP and MariaDB/PostgreSQL, and familiarity with the Linux terminal.\nIf you have any experience with this stuff, it''s time to talk about it.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than managing servers.'), + ('position.comunication-and-social.description', 'en', 'Do you have good communication and organizational skills, you like our team and you want to help us improve our public image? This is the right place!\nWe are looking for someone to perform the following tasks:\n- Write and publish posts/stories for our social media\n- Organize temporal scheduling of contents\n- Define the communication strategy in general\n- Come up with new ideas for podcasts and videos\n- Maintain relations with third parties, other associations and guests\nYou will work together with digital content creators, who will provide graphic and video resources (or you can make them yourself, if you have the skills).\nNow tell us about yourself.\nDescribe any experience you have in managing pages or profiles (e.g. personal, business, of random memes, etc...) on social networks, in particular Facebook and Instagram.\nMention also the results you achieved with such promotional activities, if you can.\nIf you had to explain in a few lines what does the team do, what would you write?\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.digital-content-creation.description', 'en', 'Unleash your inner creativity by joining our team! We are looking for people that will produce:\n- Designs for posters, infographics, business cards\n- Graphic elements for web pages and social networks\n- Backgrounds, icons and custom images for our software\n-Redesigns and modding of repaired computer cases\n- Jingles and music for our videos\nIf you''re interested in at least one, or more than one, of these activities, this is the role for you.\nTell us about any experience you have with arts, including personal projects (even small ones) or exams.\nIf you want to show us some of your past works, sketches, concepts or you have any idea on how to improve the teams public "face", do not hesitate and tell us!\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.creative-reuse.description', 'en', 'Not all the computers that we get are repairable, but we''d still like to minimize the quantity of stuff that goes into the trash can.\nIf you have any DIY skills and/or experiences in creative reuse and/or "making" this is the moment to tell us.\nYou can also add some ideas (if you have any) on how we could reuse empty cases, particularly beautiful motherboards or shiny plates from broken hard disk drives.\nPoint out which method you''d follow to develop these projects, too.\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.other.description', 'en', 'Surprise us.'); + +create trigger if not exists delete_positions_translation + after delete on positions + begin + delete from translations where id = concat('position.',old.id,'.name'); + delete from translations where id = concat('position.',old.id,'.description'); + end; + +create trigger if not exists update_positions_translation + after update on positions + begin + update translations set value = concat('position.',new.id,'.name') where id = concat('position.',old.id,'.name'); + update translations set value = concat('position.',new.id,'.description') where id = concat('position.',old.id,'.description'); + end; + -- Be careful not to change this line other than the number of the version, this is parsed with regex by the updater -insert into config (id, value) values ('SchemaVersion', '0'); \ No newline at end of file +insert into config (id, value) values ('SchemaVersion', '1'); \ No newline at end of file diff --git a/database/update/1.sql b/database/update/1.sql index 9409d08..ce03c06 100644 --- a/database/update/1.sql +++ b/database/update/1.sql @@ -1,3 +1,92 @@ +create table if not exists positions ( + id varchar not null primary key, + available integer not null +); --- TODO: actually use this \ No newline at end of file +create table if not exists translations ( + id varchar not null, + lang varchar not null, + value varchar not null, + unique(id, lang) +); + +insert into positions (id, available) values + ('hardware-repair', 1), + ('electronics', 1), + ('python-software-dev', 1), + ('php-software-dev', 1), + ('javascript-software-dev', 1), + ('vuejs-software-dev', 1), + ('machine-learning-engineer', 1), + ('sysadmin', 1), + ('communication-and-social', 1), + ('digital-content-creation', 1), + ('creative-reuse', 1), + ('other', 1); + +insert into translations (id, lang, value) values + ('position.hardware-repair.name', 'it', 'Riparazione hardware'), + ('position.electronics.name', 'it', 'Elettronica'), + ('position.python-software-dev.name', 'it', 'Sviluppo software Python'), + ('position.php-software-dev.name', 'it', 'Sviluppo software PHP'), + ('position.javascript-software-dev.name', 'it', 'Sviluppo software JavaScript'), + ('position.vuejs-software-dev.name', 'it', 'Sviluppo software Vue.js'), + ('position.machine-learning-engineer.name', 'it', 'Machine Learning Engineer'), + ('position.sysadmin.name', 'it', 'Sysadmin'), + ('position.communication-and-social.name', 'it', 'Comunicazione e social'), + ('position.digital-content-creation.name', 'it', 'Creazione di contenuti digitali'), + ('position.creative-reuse.name', 'it', 'Riuso creativo'), + ('position.other.name', 'it', 'Altro'), + ('position.hardware-repair.name', 'en', 'Hardware repair'), + ('position.electronics.name', 'en', 'Electronics'), + ('position.python-software-dev.name', 'en', 'Python software development'), + ('position.php-software-dev.name', 'en', 'PHP software development'), + ('position.javascript-software-dev.name', 'en', 'JavaScript software development'), + ('position.vuejs-software-dev.name', 'en', 'Vue.js software development'), + ('position.machine-learning-engineer.name', 'en', 'Machine Learning Engineer'), + ('position.sysadmin.name', 'en', 'Sysadmin'), + ('position.communication-and-social.name', 'en', 'Communication and social'), + ('position.digital-content-creation.name', 'en', 'Digital content creation'), + ('position.creative-reuse.name', 'en', 'Creative reuse'), + ('position.other.name', 'en', 'Other'), + ('position.hardware-repair.description', 'it', 'Descrivi qualsiasi tua esperienza di riparazione di computer (fissi o portatili), o assemblaggio, o saldatura di componenti elettronici.\nSe non sai qualcosa, cosa fai per imparare in autonomia? Puoi anche fornire degli esempi.\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a riparare computer.'), + ('position.electronics.description', 'it', 'Uno degli obiettivi del team è la progettazione di strumenti elettronici per la diagnostica a basso livello e il riuso dell''hardware recuperato.\nQual è il tuo rapporto con il mondo dell''elettronica? Ti interessa di più l''elettronica digitale o analogica (specialmente di potenza) o ti interessano entrambe?\nSe hai mai realizzato qualche circuito o progetto oltre a quelli nei laboratori didattici, parlane con riferimento anche al metodo con cui è stato realizzato (breadboard, millefori, circuito stampato, componenti through-hole o SMD, etc...).\nIndica anche se hai dimestichezza con qualche software di Electronic Design Automation (progettazione, simulazione, test e verifica, etc...).\nMenziona anche quanto tempo potresti dedicare al team e se fai qualcos''altro di interessante nel tempo libero oltre a progettare circuiti.'), + ('position.python-software-dev.description', 'it', 'Descrivi qualsiasi tua esperienza nel programmare in Python, e se hai un account su Github non esitare a condividerlo nella tua lettera!\nMolti degli strumenti interni del team sono stati creati con python, per esempio la [Peracotta](https://github.com/WEEE-Open/peracotta) ed il [Pesto](https://github.com/WEEE-Open/pesto). Se conosci come lavorare con qt ed interagire con API, sei la persona che stiamo cercando!\nPotresti menzionare se hai mai usato virtual environments, collaborato con qualcuno su un progetto software, o se sai scrivere in altri linguaggi che usiamo nel team, come JavaScript, PHP e Bash o altri ancora.\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.php-software-dev.description', 'it', 'I principali progetti PHP del team sono [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) e [crauto](https://github.com/WEEE-Open/crauto), puoi darci già un''occhiata per sapere a cosa vai incontro.\nDescrivi qualsiasi tua esperienza nel programmare in PHP, e se hai un account su Github non esitare a condividerlo nella tua lettera!\nVa bene anche "per l''esame di ... ho creato un programma che fa ..." o "ho fatto il sito web per la panetteria all''angolo".\nSe conosci anche altri linguaggi non esitare a condividere la tua esperienza.\nPuoi anche menzionare se conosci altri linguaggi di programmazione o hai mai partecipato ad altri progetti collaborativi.\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.javascript-software-dev.description', 'it', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Node.js. Cerchiamo persone capaci di lavorare con express, MySQL e creare API.\nParla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (backend, app NodeJS, e frontend, sia vanilla JS, sia framework, in particolare Vue.js). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.vuejs-software-dev.description', 'it', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Vue.js. Cerchiamo persone capaci di creare SPA e PWA con Vue.js integrate con servizi backend.\nParla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (frontend, vanilla JS, Vue.js or any other framework, e backend, NodeJS). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.machine-learning-engineer.description', 'it', 'Dal 2021-2022, grazie all''esperienza acquisita da alcuni membri del team in materia, e al lancio del nostro progetto di software per studenti, cerchiamo una figura che possa occuparsi della creazione di alcuni modelli volti a migliorare l''esperienza utente delle piattaforme web che abbiamo intenzione di sviluppare, in particolare nell''ambito del Natural Language Processing.\nSe hai delle conoscenze riguardo a qualcuno tra Python, PyTorch, Tensorflow, Keras, Jupyter Notebook e GitHub, stiamo cercando proprio te!\nSe in più sai ricercare paper scientifici su nuove tecnologie su ArXiv o simili, o hai intenzione di imparare a farlo, fantastico!\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a progettare intelligenze artificiali.'), + ('position.sysadmin.description', 'it', 'Il compito dei sysadmin è assicurarsi che gli strumenti informatici a cui il team si appoggia per le sue operazioni siano al massimo della loro efficienza.\nPer fare questo gestiscono i server che ospitano i nostri servizi, collaborano con gli sviluppatori per deployare e aggiornare i software che creiamo, monitorano lo stato di salute della nostra infrastruttura e si assicurano che i nostri dati siano protetti da attacchi e perdite.\nI sysadmin seguono l''intero ciclo di vita dei servizi, dalla configurazione del server tramite Ansible, passando per la containerizzazione e gestione dei servizi, alle normali procedure di manutenzione.\nLe competenze esercitate sono una generale conoscenza di Ansible e della containerizzazione, familiarità con la gestione e configurazione di software per server comuni come Nginx, PHP e MariaDB/PostgreSQL e maneggevolezza con il terminale Linux.\nSe hai esperienza con alcune di queste cose, parlane liberamente.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre ad amministrare server.'), + ('position.comunication-and-social.description', 'it', 'Hai buone capacità di comunicazione e organizzazione, ti piace il nostro team e vuoi aiutarci a migliorare la nostra immagine? Questo è il posto che fa per te!\nCerchiamo qualcuno che possa svolgere le seguenti mansioni:\n- Scrittura e pubblicazione di post e storie per i nostri social\n- Programmazione temporale dei contenuti\n- Definizione della strategia di comunicazione in generale\n- Brainstorming di idee per podcast e video tematici\n- Intrattenimento di rapporti con terzi, altre associazioni e ospiti\nTi troverai a lavorare in sinergia con i creatori di contenuti digitali, che si occuperanno di produrre materiale grafico e video (o potrai occupartene tu stesso se ti va e ne sei capace).\n Ora parlaci di te.\n Descrivi qualsiasi tua esperienza nel gestire pagine o profili (e.g. personali, di attività commerciali, di meme nonsense, etc...) sui social network, in particolare Facebook e Instagram.\n Menziona anche i risultati raggiunti con tali attività promozionali, se possibile.\n Se dovessi spiegare in due righe cosa fa il team, cosa diresti?\n Indica anche quanto tempo potresti dedicare a queste attività e se hai qualche altro interesse.'), + ('position.digital-content-creation.description', 'it', 'Sprigiona la tua vena creativa entrando nel nostro team! Abbiamo bisogno di figure che si occupino di realizzare:\n- Design di manifesti, infografiche, biglietti da visita\n- Elementi grafici per pagine web e social network\n- Sfondi, icone e immagini personalizzate per i nostri software\n- Redesign e modding dei case dei computer riparati\n- Jingle e motivi musicali per i nostri video\n Se almeno una, o più di una, di queste attività di interessano, questo è il ruolo adatto.\n Parla di qualsiasi esperienza artistica, inclusi progetti personali (anche piccoli) o esami sostenuti.\n Se vuoi mostrarci alcuni dei tuoi lavori passati, abbozzi, concepts o hai idee su come migliorare il volto del team, non esitare!\n Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), + ('position.creative-reuse.description', 'it', 'Non tutti i computer che ci arrivano sono riparabili, ma vorremmo comunque minimizzare la quantità di materiale che finisce nel bidone.\n Se hai manualità e/o esperienze nel riuso creativo e/o making è il momento di dirlo.\n Puoi anche aggiungere se hai idee su come potremmo riutilizzare case vuoti, schede madri dall''estetica peculiare o i piatti a specchio di hard disk rotti.\nAccenna anche a che metodo seguiresti per progettare queste cose.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), + ('position.other.description', 'it', 'Stupiscici.'), + ('position.hardware-repair.description', 'en', 'Describe anything about your experience in computer repairs (desktop or laptops), or building computers, or soldering of electronic components.\nIf you don''t know something, what do you do to learn it yourself, usually? You can give us some examples as well.\n If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\n Mention how much time you have for team activities, too, and if you have any other hobby or interests other than repairing computers.'), + ('position.electronics.description', 'en', 'One of the goals of the team is to develop electronic tools for low-level hardware diagnostics and the reuse of recovered hardware.\nWhat''s your relationship with electronics? Are you more interested in digital or analog (especially power) electronics do you like both equally?\nIf you ever made any electronic circuit or project other than those for academic courses, tell us. Explain also the method you''ve used to build them (breadboard, prototype board, PCB, through-hole components or SMD, etc...)\nTell us if you have experience with any Electronic Design Automation software (project, simulation, test and verification, etc...).\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than designing circuits.'), + ('position.python-software-dev.description', 'en', 'Describe any prior experience you have in coding in Python, and don''t hesitate sharing your Github account in your letter if you have one!\nMany of the internal tools of the team have been created with python, for example [Peracotta](https://github.com/WEEE-Open/peracotta) and [Pesto](https://github.com/WEEE-Open/pesto). If you know how to work with qt and interact with APIs, you are the person we are looking for!\nYou could mention if you have ever used virtual environments, collaborated with someone else on a software project, or if you can code in other programming languages.\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.php-software-dev.description', 'en', 'Our main PHP projects are [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) and [crauto](https://github.com/WEEE-Open/crauto), you can have a look so you know what you''re going to work on.\nDescribe any prior experience you have in coding in PHP, and don''t hesitate sharing your Github account in your letter if you have one!\nEven "for the exam of ... I created a program that does ..." or "I made the website for the bakery around the corner" are fine.\nIf you know other programming languages, don''t hesitate to share your experience.\nYou can also mention whether you know other programming languages or have ever participated to other collaborative projects.\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.javascript-software-dev.description', 'en', 'Since a couple of years we started migrating some of our projects to Node.js. We are looking for people capable of working with express, MySQL and creating APIs.\nTalk about any experience you have with JavaScript (backend, NodeJS apps, and frontend, vanilla JS, or any framework, especially Vue.js). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter!\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.vuejs-software-dev.description', 'en', 'Since a couple of years we started migrating some of our projects to Vue.js. We are looking for people capable of creating SPAs and PWAs with Vue.js integrated with backend services.\nTalk about any experience you have with JavaScript (frontend, vanilla JS, Vue.js or any other framework, and backend, NodeJS). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter!\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.machine-learning-engineer.description', 'en', 'From 2021-2022, thanks to the experience gained by some team members on the subject, and the launch of our project of software for students, we are looking for a figure who can take care of the creation of some models aimed at improving the user experience of the web platforms we intend to develop, in particular in the field of Natural Language Processing.\nIf you know any of Python, PyTorch, Tensorflow, Keras, Jupyter Notebook and GitHub, we are looking for you!\nIf you can also research scientific papers on new technologies on ArXiv or similar platforms, or you want to learn how to do it, great!\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests besides designing AIs.'), + ('position.sysadmin.description', 'en', 'Our sysadmins ensure that IT tools - which are essential for the team - are operating at peak efficiency.\nTo do this, they manage our servers, collaborate with developers to deploy and update the software we made, monitor the health of our infrastructure and ensure that our data is safe from attacks and other disasters.\nSysadmins oversee the entire service life cycle, from server configuration through Ansible, to containerization and service management, to routine maintenance procedures.\nThe competences you will use are general knowledge of Ansible and containes, familiarity with managing and configuring common server software like Nginx, PHP and MariaDB/PostgreSQL, and familiarity with the Linux terminal.\nIf you have any experience with this stuff, it''s time to talk about it.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than managing servers.'), + ('position.comunication-and-social.description', 'en', 'Do you have good communication and organizational skills, you like our team and you want to help us improve our public image? This is the right place!\nWe are looking for someone to perform the following tasks:\n- Write and publish posts/stories for our social media\n- Organize temporal scheduling of contents\n- Define the communication strategy in general\n- Come up with new ideas for podcasts and videos\n- Maintain relations with third parties, other associations and guests\nYou will work together with digital content creators, who will provide graphic and video resources (or you can make them yourself, if you have the skills).\nNow tell us about yourself.\nDescribe any experience you have in managing pages or profiles (e.g. personal, business, of random memes, etc...) on social networks, in particular Facebook and Instagram.\nMention also the results you achieved with such promotional activities, if you can.\nIf you had to explain in a few lines what does the team do, what would you write?\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.digital-content-creation.description', 'en', 'Unleash your inner creativity by joining our team! We are looking for people that will produce:\n- Designs for posters, infographics, business cards\n- Graphic elements for web pages and social networks\n- Backgrounds, icons and custom images for our software\n-Redesigns and modding of repaired computer cases\n- Jingles and music for our videos\nIf you''re interested in at least one, or more than one, of these activities, this is the role for you.\nTell us about any experience you have with arts, including personal projects (even small ones) or exams.\nIf you want to show us some of your past works, sketches, concepts or you have any idea on how to improve the teams public "face", do not hesitate and tell us!\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.creative-reuse.description', 'en', 'Not all the computers that we get are repairable, but we''d still like to minimize the quantity of stuff that goes into the trash can.\nIf you have any DIY skills and/or experiences in creative reuse and/or "making" this is the moment to tell us.\nYou can also add some ideas (if you have any) on how we could reuse empty cases, particularly beautiful motherboards or shiny plates from broken hard disk drives.\nPoint out which method you''d follow to develop these projects, too.\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.other.description', 'en', 'Surprise us.'); + + + +create trigger if not exists delete_positions_translation + after delete on positions + begin + delete from translations where id = concat('position.',old.id,'.name'); + delete from translations where id = concat('position.',old.id,'.description'); + end; + +create trigger if not exists update_positions_translation + after update on positions + begin + update translations set value = concat('position.',new.id,'.name') where id = concat('position.',old.id,'.name'); + update translations set value = concat('position.',new.id,'.description') where id = concat('position.',old.id,'.description'); + end; \ No newline at end of file diff --git a/src/Database.php b/src/Database.php index d3de028..b0cf47e 100644 --- a/src/Database.php +++ b/src/Database.php @@ -867,6 +867,126 @@ public function getAllAssignedInterviewsForTable(): array return $compact; } + /** + * Get all positions + * @param string $lang Language (optional), if not set, won't provide name or description + * + * @return array Array of associative arrays with id, availability, printable name and description + */ + public function getPositions($lang) + { + if ($lang) { + $stmt = $this->db->prepare('SELECT + p.id AS id, + p.available, + MAX(CASE + WHEN t.id LIKE 'position.' || p.id || '.name' THEN t.value + ELSE NULL + END) AS name, + MAX(CASE + WHEN t.id LIKE 'position.' || p.id || '.description' THEN t.value + ELSE NULL + END) AS description + FROM + positions p + LEFT JOIN + translations t + ON + t.id LIKE 'position.' || p.id || '.%' + GROUP BY + p.id, p.available;'); + $stmt->bindValue(':lang', $lang, SQLITE3_TEXT); + } else { + $stmt = $this->db->prepare('SELECT id, availability FROM positions'); + } + $result = $stmt->execute(); + + return $result->fetchArray(SQLITE3_ASSOC); + } + + /** + * Get a single position + * + * @param int $id Position ID + * @param string $lang Language (optional), if not set, won't provide name or description + * + * @return array Associative array with id, availability, printable name and description + */ + public function getPosition($id, $lang) + { + if ($lang) { + $stmt = $this->db->prepare('SELECT + p.id AS id, + p.available, + MAX(CASE + WHEN t.id LIKE 'position.' || p.id || '.name' THEN t.value + ELSE NULL + END) AS name, + MAX(CASE + WHEN t.id LIKE 'position.' || p.id || '.description' THEN t.value + ELSE NULL + END) AS description + FROM + positions p + LEFT JOIN + translations t + ON + t.id LIKE 'position.' || p.id || '.%' + WHERE + p.id = :id + GROUP BY + p.id, p.available;'); + $stmt->bindValue(':lang', $lang, SQLITE3_TEXT); + } else { + $stmt = $this->db->prepare('SELECT id, availability FROM positions WHERE id = :id'); + } + $stmt->bindValue(':id', $id, SQLITE3_INTEGER); + $result = $stmt->execute(); + + return $result->fetchArray(SQLITE3_ASSOC); + } + + /** + * Get a translation + * + * @param string $id Translation ID + * @param string $lang Language + * + * @return array Associative array with value + */ + public function getTranslation($id, $lang) + { + $stmt = $this->db->prepare('SELECT value FROM translations WHERE id = :id AND lang = :lang'); + $stmt->bindValue(':id', $id, SQLITE3_TEXT); + $stmt->bindValue(':lang', $lang, SQLITE3_TEXT); + $result = $stmt->execute(); + + return $result->fetchArray(SQLITE3_ASSOC); + } + + /** + * Update a translation + * + * @param string $id Translation ID + * @param string $lang Language + * @param string $value Translation value + * + * @throws DatabaseException + * + * @return void + */ + public function updateTranslation($id, $lang, $value) + { + $stmt = $this->db->prepare('INSERT OR REPLACE INTO translations (id, lang, value) VALUES (:id, :lang, :value)'); + $stmt->bindValue(':id', $id, SQLITE3_TEXT); + $stmt->bindValue(':lang', $lang, SQLITE3_TEXT); + $stmt->bindValue(':value', $value, SQLITE3_TEXT); + $result = $stmt->execute(); + if ($result === false) { + throw new DatabaseException(); + } + } + /** @noinspection PhpDocMissingThrowsInspection */ /** * Convert timestamp to a DateTime From e66de642d226edd4084374bf6438898691964a50 Mon Sep 17 00:00:00 2001 From: Leone25 <39310565+Leone25@users.noreply.github.com> Date: Thu, 4 Jul 2024 19:51:43 +0200 Subject: [PATCH 2/6] form working --- composer.json | 3 +- composer.lock | 58 +++++++- database/database.sql | 324 +++++++++++++++++++++++++++++++++------- database/update/1.sql | 326 ++++++++++++++++++++++++++++++++++------- src/Database.php | 95 +++++++----- src/PageForm.php | 33 +++-- src/Template.php | 6 +- templates/form.php | 139 +++--------------- templates/roles.php | 19 --- templates/settings.php | 4 +- 10 files changed, 715 insertions(+), 292 deletions(-) delete mode 100644 templates/roles.php diff --git a/composer.json b/composer.json index 1029c56..4e3abf8 100644 --- a/composer.json +++ b/composer.json @@ -16,7 +16,8 @@ "phpmailer/phpmailer": "^6.1", "laminas/laminas-diactoros": "^2.2", "laminas/laminas-httphandlerrunner": "^1.1", - "sabre/vobject": "^4.0" + "sabre/vobject": "^4.0", + "michelf/php-markdown": "^2.0" }, "suggest": { "ext-apcu": "Caches LDAP results avoiding continuous lookups" diff --git a/composer.lock b/composer.lock index 6c2adfd..e324064 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "bf59f46949c9ec21e7bccda619ce0714", + "content-hash": "ef8ef720a9f44dc08c4274539b59995f", "packages": [ { "name": "jumbojett/openid-connect-php", @@ -342,6 +342,62 @@ }, "time": "2023-01-16T20:25:45+00:00" }, + { + "name": "michelf/php-markdown", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/michelf/php-markdown.git", + "reference": "eb176f173fbac58a045aff78e55f833264b34e71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/michelf/php-markdown/zipball/eb176f173fbac58a045aff78e55f833264b34e71", + "reference": "eb176f173fbac58a045aff78e55f833264b34e71", + "shasum": "" + }, + "require": { + "php": ">=7.4" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.0", + "phpstan/phpstan": ">=1.0", + "phpstan/phpstan-phpunit": ">=1.0", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Michelf\\": "Michelf/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Michel Fortin", + "email": "michel.fortin@michelf.ca", + "homepage": "https://michelf.ca/", + "role": "Developer" + }, + { + "name": "John Gruber", + "homepage": "https://daringfireball.net/" + } + ], + "description": "PHP Markdown", + "homepage": "https://michelf.ca/projects/php-markdown/", + "keywords": [ + "markdown" + ], + "support": { + "issues": "https://github.com/michelf/php-markdown/issues", + "source": "https://github.com/michelf/php-markdown/tree/2.0.0" + }, + "time": "2022-09-26T12:21:08+00:00" + }, { "name": "paragonie/constant_time_encoding", "version": "v2.6.3", diff --git a/database/database.sql b/database/database.sql index a52a7ea..54a5190 100644 --- a/database/database.sql +++ b/database/database.sql @@ -36,7 +36,7 @@ create table config ( ); insert into config (id, value) -values ('expiry', null), ('rolesAvailable', null), ('notifyEmail', 0); +values ('expiry', null), ('notifyEmail', 0); create table evaluation ( id_evaluation integer primary key autoincrement, @@ -88,54 +88,280 @@ insert into positions (id, available) values ('other', 1); insert into translations (id, lang, value) values - ('position.hardware-repair.name', 'it', 'Riparazione hardware'), - ('position.electronics.name', 'it', 'Elettronica'), - ('position.python-software-dev.name', 'it', 'Sviluppo software Python'), - ('position.php-software-dev.name', 'it', 'Sviluppo software PHP'), - ('position.javascript-software-dev.name', 'it', 'Sviluppo software JavaScript'), - ('position.vuejs-software-dev.name', 'it', 'Sviluppo software Vue.js'), - ('position.machine-learning-engineer.name', 'it', 'Machine Learning Engineer'), - ('position.sysadmin.name', 'it', 'Sysadmin'), - ('position.communication-and-social.name', 'it', 'Comunicazione e social'), - ('position.digital-content-creation.name', 'it', 'Creazione di contenuti digitali'), - ('position.creative-reuse.name', 'it', 'Riuso creativo'), - ('position.other.name', 'it', 'Altro'), - ('position.hardware-repair.name', 'en', 'Hardware repair'), - ('position.electronics.name', 'en', 'Electronics'), - ('position.python-software-dev.name', 'en', 'Python software development'), - ('position.php-software-dev.name', 'en', 'PHP software development'), - ('position.javascript-software-dev.name', 'en', 'JavaScript software development'), - ('position.vuejs-software-dev.name', 'en', 'Vue.js software development'), - ('position.machine-learning-engineer.name', 'en', 'Machine Learning Engineer'), - ('position.sysadmin.name', 'en', 'Sysadmin'), - ('position.communication-and-social.name', 'en', 'Communication and social'), - ('position.digital-content-creation.name', 'en', 'Digital content creation'), - ('position.creative-reuse.name', 'en', 'Creative reuse'), - ('position.other.name', 'en', 'Other'), - ('position.hardware-repair.description', 'it', 'Descrivi qualsiasi tua esperienza di riparazione di computer (fissi o portatili), o assemblaggio, o saldatura di componenti elettronici.\nSe non sai qualcosa, cosa fai per imparare in autonomia? Puoi anche fornire degli esempi.\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a riparare computer.'), - ('position.electronics.description', 'it', 'Uno degli obiettivi del team è la progettazione di strumenti elettronici per la diagnostica a basso livello e il riuso dell''hardware recuperato.\nQual è il tuo rapporto con il mondo dell''elettronica? Ti interessa di più l''elettronica digitale o analogica (specialmente di potenza) o ti interessano entrambe?\nSe hai mai realizzato qualche circuito o progetto oltre a quelli nei laboratori didattici, parlane con riferimento anche al metodo con cui è stato realizzato (breadboard, millefori, circuito stampato, componenti through-hole o SMD, etc...).\nIndica anche se hai dimestichezza con qualche software di Electronic Design Automation (progettazione, simulazione, test e verifica, etc...).\nMenziona anche quanto tempo potresti dedicare al team e se fai qualcos''altro di interessante nel tempo libero oltre a progettare circuiti.'), - ('position.python-software-dev.description', 'it', 'Descrivi qualsiasi tua esperienza nel programmare in Python, e se hai un account su Github non esitare a condividerlo nella tua lettera!\nMolti degli strumenti interni del team sono stati creati con python, per esempio la [Peracotta](https://github.com/WEEE-Open/peracotta) ed il [Pesto](https://github.com/WEEE-Open/pesto). Se conosci come lavorare con qt ed interagire con API, sei la persona che stiamo cercando!\nPotresti menzionare se hai mai usato virtual environments, collaborato con qualcuno su un progetto software, o se sai scrivere in altri linguaggi che usiamo nel team, come JavaScript, PHP e Bash o altri ancora.\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), - ('position.php-software-dev.description', 'it', 'I principali progetti PHP del team sono [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) e [crauto](https://github.com/WEEE-Open/crauto), puoi darci già un''occhiata per sapere a cosa vai incontro.\nDescrivi qualsiasi tua esperienza nel programmare in PHP, e se hai un account su Github non esitare a condividerlo nella tua lettera!\nVa bene anche "per l''esame di ... ho creato un programma che fa ..." o "ho fatto il sito web per la panetteria all''angolo".\nSe conosci anche altri linguaggi non esitare a condividere la tua esperienza.\nPuoi anche menzionare se conosci altri linguaggi di programmazione o hai mai partecipato ad altri progetti collaborativi.\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), - ('position.javascript-software-dev.description', 'it', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Node.js. Cerchiamo persone capaci di lavorare con express, MySQL e creare API.\nParla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (backend, app NodeJS, e frontend, sia vanilla JS, sia framework, in particolare Vue.js). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), - ('position.vuejs-software-dev.description', 'it', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Vue.js. Cerchiamo persone capaci di creare SPA e PWA con Vue.js integrate con servizi backend.\nParla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (frontend, vanilla JS, Vue.js or any other framework, e backend, NodeJS). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), - ('position.machine-learning-engineer.description', 'it', 'Dal 2021-2022, grazie all''esperienza acquisita da alcuni membri del team in materia, e al lancio del nostro progetto di software per studenti, cerchiamo una figura che possa occuparsi della creazione di alcuni modelli volti a migliorare l''esperienza utente delle piattaforme web che abbiamo intenzione di sviluppare, in particolare nell''ambito del Natural Language Processing.\nSe hai delle conoscenze riguardo a qualcuno tra Python, PyTorch, Tensorflow, Keras, Jupyter Notebook e GitHub, stiamo cercando proprio te!\nSe in più sai ricercare paper scientifici su nuove tecnologie su ArXiv o simili, o hai intenzione di imparare a farlo, fantastico!\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a progettare intelligenze artificiali.'), - ('position.sysadmin.description', 'it', 'Il compito dei sysadmin è assicurarsi che gli strumenti informatici a cui il team si appoggia per le sue operazioni siano al massimo della loro efficienza.\nPer fare questo gestiscono i server che ospitano i nostri servizi, collaborano con gli sviluppatori per deployare e aggiornare i software che creiamo, monitorano lo stato di salute della nostra infrastruttura e si assicurano che i nostri dati siano protetti da attacchi e perdite.\nI sysadmin seguono l''intero ciclo di vita dei servizi, dalla configurazione del server tramite Ansible, passando per la containerizzazione e gestione dei servizi, alle normali procedure di manutenzione.\nLe competenze esercitate sono una generale conoscenza di Ansible e della containerizzazione, familiarità con la gestione e configurazione di software per server comuni come Nginx, PHP e MariaDB/PostgreSQL e maneggevolezza con il terminale Linux.\nSe hai esperienza con alcune di queste cose, parlane liberamente.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre ad amministrare server.'), - ('position.comunication-and-social.description', 'it', 'Hai buone capacità di comunicazione e organizzazione, ti piace il nostro team e vuoi aiutarci a migliorare la nostra immagine? Questo è il posto che fa per te!\nCerchiamo qualcuno che possa svolgere le seguenti mansioni:\n- Scrittura e pubblicazione di post e storie per i nostri social\n- Programmazione temporale dei contenuti\n- Definizione della strategia di comunicazione in generale\n- Brainstorming di idee per podcast e video tematici\n- Intrattenimento di rapporti con terzi, altre associazioni e ospiti\nTi troverai a lavorare in sinergia con i creatori di contenuti digitali, che si occuperanno di produrre materiale grafico e video (o potrai occupartene tu stesso se ti va e ne sei capace).\n Ora parlaci di te.\n Descrivi qualsiasi tua esperienza nel gestire pagine o profili (e.g. personali, di attività commerciali, di meme nonsense, etc...) sui social network, in particolare Facebook e Instagram.\n Menziona anche i risultati raggiunti con tali attività promozionali, se possibile.\n Se dovessi spiegare in due righe cosa fa il team, cosa diresti?\n Indica anche quanto tempo potresti dedicare a queste attività e se hai qualche altro interesse.'), - ('position.digital-content-creation.description', 'it', 'Sprigiona la tua vena creativa entrando nel nostro team! Abbiamo bisogno di figure che si occupino di realizzare:\n- Design di manifesti, infografiche, biglietti da visita\n- Elementi grafici per pagine web e social network\n- Sfondi, icone e immagini personalizzate per i nostri software\n- Redesign e modding dei case dei computer riparati\n- Jingle e motivi musicali per i nostri video\n Se almeno una, o più di una, di queste attività di interessano, questo è il ruolo adatto.\n Parla di qualsiasi esperienza artistica, inclusi progetti personali (anche piccoli) o esami sostenuti.\n Se vuoi mostrarci alcuni dei tuoi lavori passati, abbozzi, concepts o hai idee su come migliorare il volto del team, non esitare!\n Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), - ('position.creative-reuse.description', 'it', 'Non tutti i computer che ci arrivano sono riparabili, ma vorremmo comunque minimizzare la quantità di materiale che finisce nel bidone.\n Se hai manualità e/o esperienze nel riuso creativo e/o making è il momento di dirlo.\n Puoi anche aggiungere se hai idee su come potremmo riutilizzare case vuoti, schede madri dall''estetica peculiare o i piatti a specchio di hard disk rotti.\nAccenna anche a che metodo seguiresti per progettare queste cose.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), - ('position.other.description', 'it', 'Stupiscici.'), - ('position.hardware-repair.description', 'en', 'Describe anything about your experience in computer repairs (desktop or laptops), or building computers, or soldering of electronic components.\nIf you don''t know something, what do you do to learn it yourself, usually? You can give us some examples as well.\n If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\n Mention how much time you have for team activities, too, and if you have any other hobby or interests other than repairing computers.'), - ('position.electronics.description', 'en', 'One of the goals of the team is to develop electronic tools for low-level hardware diagnostics and the reuse of recovered hardware.\nWhat''s your relationship with electronics? Are you more interested in digital or analog (especially power) electronics do you like both equally?\nIf you ever made any electronic circuit or project other than those for academic courses, tell us. Explain also the method you''ve used to build them (breadboard, prototype board, PCB, through-hole components or SMD, etc...)\nTell us if you have experience with any Electronic Design Automation software (project, simulation, test and verification, etc...).\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than designing circuits.'), - ('position.python-software-dev.description', 'en', 'Describe any prior experience you have in coding in Python, and don''t hesitate sharing your Github account in your letter if you have one!\nMany of the internal tools of the team have been created with python, for example [Peracotta](https://github.com/WEEE-Open/peracotta) and [Pesto](https://github.com/WEEE-Open/pesto). If you know how to work with qt and interact with APIs, you are the person we are looking for!\nYou could mention if you have ever used virtual environments, collaborated with someone else on a software project, or if you can code in other programming languages.\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), - ('position.php-software-dev.description', 'en', 'Our main PHP projects are [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) and [crauto](https://github.com/WEEE-Open/crauto), you can have a look so you know what you''re going to work on.\nDescribe any prior experience you have in coding in PHP, and don''t hesitate sharing your Github account in your letter if you have one!\nEven "for the exam of ... I created a program that does ..." or "I made the website for the bakery around the corner" are fine.\nIf you know other programming languages, don''t hesitate to share your experience.\nYou can also mention whether you know other programming languages or have ever participated to other collaborative projects.\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), - ('position.javascript-software-dev.description', 'en', 'Since a couple of years we started migrating some of our projects to Node.js. We are looking for people capable of working with express, MySQL and creating APIs.\nTalk about any experience you have with JavaScript (backend, NodeJS apps, and frontend, vanilla JS, or any framework, especially Vue.js). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter!\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), - ('position.vuejs-software-dev.description', 'en', 'Since a couple of years we started migrating some of our projects to Vue.js. We are looking for people capable of creating SPAs and PWAs with Vue.js integrated with backend services.\nTalk about any experience you have with JavaScript (frontend, vanilla JS, Vue.js or any other framework, and backend, NodeJS). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter!\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), - ('position.machine-learning-engineer.description', 'en', 'From 2021-2022, thanks to the experience gained by some team members on the subject, and the launch of our project of software for students, we are looking for a figure who can take care of the creation of some models aimed at improving the user experience of the web platforms we intend to develop, in particular in the field of Natural Language Processing.\nIf you know any of Python, PyTorch, Tensorflow, Keras, Jupyter Notebook and GitHub, we are looking for you!\nIf you can also research scientific papers on new technologies on ArXiv or similar platforms, or you want to learn how to do it, great!\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests besides designing AIs.'), - ('position.sysadmin.description', 'en', 'Our sysadmins ensure that IT tools - which are essential for the team - are operating at peak efficiency.\nTo do this, they manage our servers, collaborate with developers to deploy and update the software we made, monitor the health of our infrastructure and ensure that our data is safe from attacks and other disasters.\nSysadmins oversee the entire service life cycle, from server configuration through Ansible, to containerization and service management, to routine maintenance procedures.\nThe competences you will use are general knowledge of Ansible and containes, familiarity with managing and configuring common server software like Nginx, PHP and MariaDB/PostgreSQL, and familiarity with the Linux terminal.\nIf you have any experience with this stuff, it''s time to talk about it.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than managing servers.'), - ('position.comunication-and-social.description', 'en', 'Do you have good communication and organizational skills, you like our team and you want to help us improve our public image? This is the right place!\nWe are looking for someone to perform the following tasks:\n- Write and publish posts/stories for our social media\n- Organize temporal scheduling of contents\n- Define the communication strategy in general\n- Come up with new ideas for podcasts and videos\n- Maintain relations with third parties, other associations and guests\nYou will work together with digital content creators, who will provide graphic and video resources (or you can make them yourself, if you have the skills).\nNow tell us about yourself.\nDescribe any experience you have in managing pages or profiles (e.g. personal, business, of random memes, etc...) on social networks, in particular Facebook and Instagram.\nMention also the results you achieved with such promotional activities, if you can.\nIf you had to explain in a few lines what does the team do, what would you write?\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), - ('position.digital-content-creation.description', 'en', 'Unleash your inner creativity by joining our team! We are looking for people that will produce:\n- Designs for posters, infographics, business cards\n- Graphic elements for web pages and social networks\n- Backgrounds, icons and custom images for our software\n-Redesigns and modding of repaired computer cases\n- Jingles and music for our videos\nIf you''re interested in at least one, or more than one, of these activities, this is the role for you.\nTell us about any experience you have with arts, including personal projects (even small ones) or exams.\nIf you want to show us some of your past works, sketches, concepts or you have any idea on how to improve the teams public "face", do not hesitate and tell us!\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), - ('position.creative-reuse.description', 'en', 'Not all the computers that we get are repairable, but we''d still like to minimize the quantity of stuff that goes into the trash can.\nIf you have any DIY skills and/or experiences in creative reuse and/or "making" this is the moment to tell us.\nYou can also add some ideas (if you have any) on how we could reuse empty cases, particularly beautiful motherboards or shiny plates from broken hard disk drives.\nPoint out which method you''d follow to develop these projects, too.\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), - ('position.other.description', 'en', 'Surprise us.'); + ('position.hardware-repair.name', 'it-IT', 'Riparazione hardware'), + ('position.electronics.name', 'it-IT', 'Elettronica'), + ('position.python-software-dev.name', 'it-IT', 'Sviluppo software Python'), + ('position.php-software-dev.name', 'it-IT', 'Sviluppo software PHP'), + ('position.javascript-software-dev.name', 'it-IT', 'Sviluppo software JavaScript'), + ('position.vuejs-software-dev.name', 'it-IT', 'Sviluppo software Vue.js'), + ('position.machine-learning-engineer.name', 'it-IT', 'Machine Learning Engineer'), + ('position.sysadmin.name', 'it-IT', 'Sysadmin'), + ('position.communication-and-social.name', 'it-IT', 'Comunicazione e social'), + ('position.digital-content-creation.name', 'it-IT', 'Creazione di contenuti digitali'), + ('position.creative-reuse.name', 'it-IT', 'Riuso creativo'), + ('position.other.name', 'it-IT', 'Altro'), + ('position.hardware-repair.name', 'en-US', 'Hardware repair'), + ('position.electronics.name', 'en-US', 'Electronics'), + ('position.python-software-dev.name', 'en-US', 'Python software development'), + ('position.php-software-dev.name', 'en-US', 'PHP software development'), + ('position.javascript-software-dev.name', 'en-US', 'JavaScript software development'), + ('position.vuejs-software-dev.name', 'en-US', 'Vue.js software development'), + ('position.machine-learning-engineer.name', 'en-US', 'Machine Learning Engineer'), + ('position.sysadmin.name', 'en-US', 'Sysadmin'), + ('position.communication-and-social.name', 'en-US', 'Communication and social'), + ('position.digital-content-creation.name', 'en-US', 'Digital content creation'), + ('position.creative-reuse.name', 'en-US', 'Creative reuse'), + ('position.other.name', 'en-US', 'Other'), + ('position.hardware-repair.description', 'it-IT', 'Descrivi qualsiasi tua esperienza di riparazione di computer (fissi o portatili), o assemblaggio, o saldatura di componenti elettronici. + +Se non sai qualcosa, cosa fai per imparare in autonomia? Puoi anche fornire degli esempi. + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a riparare computer.'), + ('position.electronics.description', 'it-IT', 'Uno degli obiettivi del team è la progettazione di strumenti elettronici per la diagnostica a basso livello e il riuso dell''hardware recuperato. + +Qual è il tuo rapporto con il mondo dell''elettronica? Ti interessa di più l''elettronica digitale o analogica (specialmente di potenza) o ti interessano entrambe? + +Se hai mai realizzato qualche circuito o progetto oltre a quelli nei laboratori didattici, parlane con riferimento anche al metodo con cui è stato realizzato (breadboard, millefori, circuito stampato, componenti through-hole o SMD, etc...). + +Indica anche se hai dimestichezza con qualche software di Electronic Design Automation (progettazione, simulazione, test e verifica, etc...). + +Menziona anche quanto tempo potresti dedicare al team e se fai qualcos''altro di interessante nel tempo libero oltre a progettare circuiti.'), + ('position.python-software-dev.description', 'it-IT', 'Descrivi qualsiasi tua esperienza nel programmare in Python, e se hai un account su Github non esitare a condividerlo nella tua lettera! + +Molti degli strumenti interni del team sono stati creati con python, per esempio la [Peracotta](https://github.com/WEEE-Open/peracotta) ed il [Pesto](https://github.com/WEEE-Open/pesto). Se conosci come lavorare con qt ed interagire con API, sei la persona che stiamo cercando! + +Potresti menzionare se hai mai usato virtual environments, collaborato con qualcuno su un progetto software, o se sai scrivere in altri linguaggi che usiamo nel team, come JavaScript, PHP e Bash o altri ancora. + +Oltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)? + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.php-software-dev.description', 'it-IT', 'I principali progetti PHP del team sono [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) e [crauto](https://github.com/WEEE-Open/crauto), puoi darci già un''occhiata per sapere a cosa vai incontro. + +Descrivi qualsiasi tua esperienza nel programmare in PHP, e se hai un account su Github non esitare a condividerlo nella tua lettera! + +Va bene anche "per l''esame di ... ho creato un programma che fa ..." o "ho fatto il sito web per la panetteria all''angolo". + +Se conosci anche altri linguaggi non esitare a condividere la tua esperienza. + +Puoi anche menzionare se conosci altri linguaggi di programmazione o hai mai partecipato ad altri progetti collaborativi. + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.javascript-software-dev.description', 'it-IT', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Node.js. Cerchiamo persone capaci di lavorare con express, MySQL e creare API. + +Parla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (backend, app NodeJS, e frontend, sia vanilla JS, sia framework, in particolare Vue.js). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera! + +Oltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)? + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.vuejs-software-dev.description', 'it-IT', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Vue.js. Cerchiamo persone capaci di creare SPA e PWA con Vue.js integrate con servizi backend. + +Parla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (frontend, vanilla JS, Vue.js or any other framework, e backend, NodeJS). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera! + +Oltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)? + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.machine-learning-engineer.description', 'it-IT', 'Dal 2021-2022, grazie all''esperienza acquisita da alcuni membri del team in materia, e al lancio del nostro progetto di software per studenti, cerchiamo una figura che possa occuparsi della creazione di alcuni modelli volti a migliorare l''esperienza utente delle piattaforme web che abbiamo intenzione di sviluppare, in particolare nell''ambito del Natural Language Processing. + +Se hai delle conoscenze riguardo a qualcuno tra Python, PyTorch, Tensorflow, Keras, Jupyter Notebook e GitHub, stiamo cercando proprio te! + +Se in più sai ricercare paper scientifici su nuove tecnologie su ArXiv o simili, o hai intenzione di imparare a farlo, fantastico! + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a progettare intelligenze artificiali.'), + ('position.sysadmin.description', 'it-IT', 'Il compito dei sysadmin è assicurarsi che gli strumenti informatici a cui il team si appoggia per le sue operazioni siano al massimo della loro efficienza. + +Per fare questo gestiscono i server che ospitano i nostri servizi, collaborano con gli sviluppatori per deployare e aggiornare i software che creiamo, monitorano lo stato di salute della nostra infrastruttura e si assicurano che i nostri dati siano protetti da attacchi e perdite. + +I sysadmin seguono l''intero ciclo di vita dei servizi, dalla configurazione del server tramite Ansible, passando per la containerizzazione e gestione dei servizi, alle normali procedure di manutenzione. + +Le competenze esercitate sono una generale conoscenza di Ansible e della containerizzazione, familiarità con la gestione e configurazione di software per server comuni come Nginx, PHP e MariaDB/PostgreSQL e maneggevolezza con il terminale Linux. + +Se hai esperienza con alcune di queste cose, parlane liberamente. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre ad amministrare server.'), + ('position.communication-and-social.description', 'it-IT', 'Hai buone capacità di comunicazione e organizzazione, ti piace il nostro team e vuoi aiutarci a migliorare la nostra immagine? Questo è il posto che fa per te! + +Cerchiamo qualcuno che possa svolgere le seguenti mansioni: + +- Scrittura e pubblicazione di post e storie per i nostri social +- Programmazione temporale dei contenuti +- Definizione della strategia di comunicazione in generale +- Brainstorming di idee per podcast e video tematici +- Intrattenimento di rapporti con terzi, altre associazioni e ospiti + +Ti troverai a lavorare in sinergia con i creatori di contenuti digitali, che si occuperanno di produrre materiale grafico e video (o potrai occupartene tu stesso se ti va e ne sei capace). + +Ora parlaci di te. + +Descrivi qualsiasi tua esperienza nel gestire pagine o profili (e.g. personali, di attività commerciali, di meme nonsense, etc...) sui social network, in particolare Facebook e Instagram. + +Menziona anche i risultati raggiunti con tali attività promozionali, se possibile. + +Se dovessi spiegare in due righe cosa fa il team, cosa diresti? + +Indica anche quanto tempo potresti dedicare a queste attività e se hai qualche altro interesse.'), + ('position.digital-content-creation.description', 'it-IT', 'Sprigiona la tua vena creativa entrando nel nostro team! Abbiamo bisogno di figure che si occupino di realizzare: + +- Design di manifesti, infografiche, biglietti da visita +- Elementi grafici per pagine web e social network +- Sfondi, icone e immagini personalizzate per i nostri software +- Redesign e modding dei case dei computer riparati +- Jingle e motivi musicali per i nostri video + +Se almeno una, o più di una, di queste attività di interessano, questo è il ruolo adatto. + +Parla di qualsiasi esperienza artistica, inclusi progetti personali (anche piccoli) o esami sostenuti. + +Se vuoi mostrarci alcuni dei tuoi lavori passati, abbozzi, concepts o hai idee su come migliorare il volto del team, non esitare! + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), + ('position.creative-reuse.description', 'it-IT', 'Non tutti i computer che ci arrivano sono riparabili, ma vorremmo comunque minimizzare la quantità di materiale che finisce nel bidone. + +Se hai manualità e/o esperienze nel riuso creativo e/o making è il momento di dirlo. + +Puoi anche aggiungere se hai idee su come potremmo riutilizzare case vuoti, schede madri dall''estetica peculiare o i piatti a specchio di hard disk rotti. + +Accenna anche a che metodo seguiresti per progettare queste cose. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), + ('position.other.description', 'it-IT', 'Stupiscici.'), + ('position.hardware-repair.description', 'en-US', 'Describe anything about your experience in computer repairs (desktop or laptops), or building computers, or soldering of electronic components. + +If you don''t know something, what do you do to learn it yourself, usually? You can give us some examples as well. + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than repairing computers.'), + ('position.electronics.description', 'en-US', 'One of the goals of the team is to develop electronic tools for low-level hardware diagnostics and the reuse of recovered hardware. + +What''s your relationship with electronics? Are you more interested in digital or analog (especially power) electronics do you like both equally? + +If you ever made any electronic circuit or project other than those for academic courses, tell us. Explain also the method you''ve used to build them (breadboard, prototype board, PCB, through-hole components or SMD, etc...) + +Tell us if you have experience with any Electronic Design Automation software (project, simulation, test and verification, etc...). + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than designing circuits.'), + ('position.python-software-dev.description', 'en-US', 'Describe any prior experience you have in coding in Python, and don''t hesitate sharing your Github account in your letter if you have one! + +Many of the internal tools of the team have been created with python, for example [Peracotta](https://github.com/WEEE-Open/peracotta) and [Pesto](https://github.com/WEEE-Open/pesto). If you know how to work with qt and interact with APIs, you are the person we are looking for! + +You could mention if you have ever used virtual environments, collaborated with someone else on a software project, or if you can code in other programming languages. + +Besides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc... + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.php-software-dev.description', 'en-US', 'Our main PHP projects are [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) and [crauto](https://github.com/WEEE-Open/crauto), you can have a look so you know what you''re going to work on. + +Describe any prior experience you have in coding in PHP, and don''t hesitate sharing your Github account in your letter if you have one! + +Even "for the exam of ... I created a program that does ..." or "I made the website for the bakery around the corner" are fine. + +If you know other programming languages, don''t hesitate to share your experience. + +You can also mention whether you know other programming languages or have ever participated to other collaborative projects. + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.javascript-software-dev.description', 'en-US', 'Since a couple of years we started migrating some of our projects to Node.js. We are looking for people capable of working with express, MySQL and creating APIs. + +Talk about any experience you have with JavaScript (backend, NodeJS apps, and frontend, vanilla JS, or any framework, especially Vue.js). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! + +And if you have a Github account don''t hesitate to share it in your letter! + +Besides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc... + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.vuejs-software-dev.description', 'en-US', 'Since a couple of years we started migrating some of our projects to Vue.js. We are looking for people capable of creating SPAs and PWAs with Vue.js integrated with backend services. + +Talk about any experience you have with JavaScript (frontend, vanilla JS, Vue.js or any other framework, and backend, NodeJS). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter! + +Besides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc... + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.machine-learning-engineer.description', 'en-US', 'From 2021-2022, thanks to the experience gained by some team members on the subject, and the launch of our project of software for students, we are looking for a figure who can take care of the creation of some models aimed at improving the user experience of the web platforms we intend to develop, in particular in the field of Natural Language Processing. + +If you know any of Python, PyTorch, Tensorflow, Keras, Jupyter Notebook and GitHub, we are looking for you! + +If you can also research scientific papers on new technologies on ArXiv or similar platforms, or you want to learn how to do it, great! + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests besides designing AIs.'), + ('position.sysadmin.description', 'en-US', 'Our sysadmins ensure that IT tools - which are essential for the team - are operating at peak efficiency. + +To do this, they manage our servers, collaborate with developers to deploy and update the software we made, monitor the health of our infrastructure and ensure that our data is safe from attacks and other disasters. + +Sysadmins oversee the entire service life cycle, from server configuration through Ansible, to containerization and service management, to routine maintenance procedures. + +The competences you will use are general knowledge of Ansible and containes, familiarity with managing and configuring common server software like Nginx, PHP and MariaDB/PostgreSQL, and familiarity with the Linux terminal. + +If you have any experience with this stuff, it''s time to talk about it. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than managing servers.'), + ('position.communication-and-social.description', 'en-US', 'Do you have good communication and organizational skills, you like our team and you want to help us improve our public image? This is the right place! + +We are looking for someone to perform the following tasks: + +- Write and publish posts/stories for our social media +- Organize temporal scheduling of contents +- Define the communication strategy in general +- Come up with new ideas for podcasts and videos +- Maintain relations with third parties, other associations and guests + +You will work together with digital content creators, who will provide graphic and video resources (or you can make them yourself, if you have the skills). + +Now tell us about yourself. + +Describe any experience you have in managing pages or profiles (e.g. personal, business, of random memes, etc...) on social networks, in particular Facebook and Instagram. + +Mention also the results you achieved with such promotional activities, if you can. + +If you had to explain in a few lines what does the team do, what would you write? + +Mention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.digital-content-creation.description', 'en-US', 'Unleash your inner creativity by joining our team! We are looking for people that will produce: + +- Designs for posters, infographics, business cards +- Graphic elements for web pages and social networks +- Backgrounds, icons and custom images for our software +-Redesigns and modding of repaired computer cases +- Jingles and music for our videos + +If you''re interested in at least one, or more than one, of these activities, this is the role for you. + +Tell us about any experience you have with arts, including personal projects (even small ones) or exams. + +If you want to show us some of your past works, sketches, concepts or you have any idea on how to improve the teams public "face", do not hesitate and tell us! + +Mention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.creative-reuse.description', 'en-US', 'Not all the computers that we get are repairable, but we''d still like to minimize the quantity of stuff that goes into the trash can. + +If you have any DIY skills and/or experiences in creative reuse and/or "making" this is the moment to tell us. + +You can also add some ideas (if you have any) on how we could reuse empty cases, particularly beautiful motherboards or shiny plates from broken hard disk drives. + +Point out which method you''d follow to develop these projects, too. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.other.description', 'en-US', 'Surprise us.'); create trigger if not exists delete_positions_translation after delete on positions diff --git a/database/update/1.sql b/database/update/1.sql index ce03c06..639746a 100644 --- a/database/update/1.sql +++ b/database/update/1.sql @@ -26,54 +26,280 @@ insert into positions (id, available) values ('other', 1); insert into translations (id, lang, value) values - ('position.hardware-repair.name', 'it', 'Riparazione hardware'), - ('position.electronics.name', 'it', 'Elettronica'), - ('position.python-software-dev.name', 'it', 'Sviluppo software Python'), - ('position.php-software-dev.name', 'it', 'Sviluppo software PHP'), - ('position.javascript-software-dev.name', 'it', 'Sviluppo software JavaScript'), - ('position.vuejs-software-dev.name', 'it', 'Sviluppo software Vue.js'), - ('position.machine-learning-engineer.name', 'it', 'Machine Learning Engineer'), - ('position.sysadmin.name', 'it', 'Sysadmin'), - ('position.communication-and-social.name', 'it', 'Comunicazione e social'), - ('position.digital-content-creation.name', 'it', 'Creazione di contenuti digitali'), - ('position.creative-reuse.name', 'it', 'Riuso creativo'), - ('position.other.name', 'it', 'Altro'), - ('position.hardware-repair.name', 'en', 'Hardware repair'), - ('position.electronics.name', 'en', 'Electronics'), - ('position.python-software-dev.name', 'en', 'Python software development'), - ('position.php-software-dev.name', 'en', 'PHP software development'), - ('position.javascript-software-dev.name', 'en', 'JavaScript software development'), - ('position.vuejs-software-dev.name', 'en', 'Vue.js software development'), - ('position.machine-learning-engineer.name', 'en', 'Machine Learning Engineer'), - ('position.sysadmin.name', 'en', 'Sysadmin'), - ('position.communication-and-social.name', 'en', 'Communication and social'), - ('position.digital-content-creation.name', 'en', 'Digital content creation'), - ('position.creative-reuse.name', 'en', 'Creative reuse'), - ('position.other.name', 'en', 'Other'), - ('position.hardware-repair.description', 'it', 'Descrivi qualsiasi tua esperienza di riparazione di computer (fissi o portatili), o assemblaggio, o saldatura di componenti elettronici.\nSe non sai qualcosa, cosa fai per imparare in autonomia? Puoi anche fornire degli esempi.\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a riparare computer.'), - ('position.electronics.description', 'it', 'Uno degli obiettivi del team è la progettazione di strumenti elettronici per la diagnostica a basso livello e il riuso dell''hardware recuperato.\nQual è il tuo rapporto con il mondo dell''elettronica? Ti interessa di più l''elettronica digitale o analogica (specialmente di potenza) o ti interessano entrambe?\nSe hai mai realizzato qualche circuito o progetto oltre a quelli nei laboratori didattici, parlane con riferimento anche al metodo con cui è stato realizzato (breadboard, millefori, circuito stampato, componenti through-hole o SMD, etc...).\nIndica anche se hai dimestichezza con qualche software di Electronic Design Automation (progettazione, simulazione, test e verifica, etc...).\nMenziona anche quanto tempo potresti dedicare al team e se fai qualcos''altro di interessante nel tempo libero oltre a progettare circuiti.'), - ('position.python-software-dev.description', 'it', 'Descrivi qualsiasi tua esperienza nel programmare in Python, e se hai un account su Github non esitare a condividerlo nella tua lettera!\nMolti degli strumenti interni del team sono stati creati con python, per esempio la [Peracotta](https://github.com/WEEE-Open/peracotta) ed il [Pesto](https://github.com/WEEE-Open/pesto). Se conosci come lavorare con qt ed interagire con API, sei la persona che stiamo cercando!\nPotresti menzionare se hai mai usato virtual environments, collaborato con qualcuno su un progetto software, o se sai scrivere in altri linguaggi che usiamo nel team, come JavaScript, PHP e Bash o altri ancora.\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), - ('position.php-software-dev.description', 'it', 'I principali progetti PHP del team sono [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) e [crauto](https://github.com/WEEE-Open/crauto), puoi darci già un''occhiata per sapere a cosa vai incontro.\nDescrivi qualsiasi tua esperienza nel programmare in PHP, e se hai un account su Github non esitare a condividerlo nella tua lettera!\nVa bene anche "per l''esame di ... ho creato un programma che fa ..." o "ho fatto il sito web per la panetteria all''angolo".\nSe conosci anche altri linguaggi non esitare a condividere la tua esperienza.\nPuoi anche menzionare se conosci altri linguaggi di programmazione o hai mai partecipato ad altri progetti collaborativi.\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), - ('position.javascript-software-dev.description', 'it', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Node.js. Cerchiamo persone capaci di lavorare con express, MySQL e creare API.\nParla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (backend, app NodeJS, e frontend, sia vanilla JS, sia framework, in particolare Vue.js). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), - ('position.vuejs-software-dev.description', 'it', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Vue.js. Cerchiamo persone capaci di creare SPA e PWA con Vue.js integrate con servizi backend.\nParla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (frontend, vanilla JS, Vue.js or any other framework, e backend, NodeJS). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!\nOltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), - ('position.machine-learning-engineer.description', 'it', 'Dal 2021-2022, grazie all''esperienza acquisita da alcuni membri del team in materia, e al lancio del nostro progetto di software per studenti, cerchiamo una figura che possa occuparsi della creazione di alcuni modelli volti a migliorare l''esperienza utente delle piattaforme web che abbiamo intenzione di sviluppare, in particolare nell''ambito del Natural Language Processing.\nSe hai delle conoscenze riguardo a qualcuno tra Python, PyTorch, Tensorflow, Keras, Jupyter Notebook e GitHub, stiamo cercando proprio te!\nSe in più sai ricercare paper scientifici su nuove tecnologie su ArXiv o simili, o hai intenzione di imparare a farlo, fantastico!\nSe hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a progettare intelligenze artificiali.'), - ('position.sysadmin.description', 'it', 'Il compito dei sysadmin è assicurarsi che gli strumenti informatici a cui il team si appoggia per le sue operazioni siano al massimo della loro efficienza.\nPer fare questo gestiscono i server che ospitano i nostri servizi, collaborano con gli sviluppatori per deployare e aggiornare i software che creiamo, monitorano lo stato di salute della nostra infrastruttura e si assicurano che i nostri dati siano protetti da attacchi e perdite.\nI sysadmin seguono l''intero ciclo di vita dei servizi, dalla configurazione del server tramite Ansible, passando per la containerizzazione e gestione dei servizi, alle normali procedure di manutenzione.\nLe competenze esercitate sono una generale conoscenza di Ansible e della containerizzazione, familiarità con la gestione e configurazione di software per server comuni come Nginx, PHP e MariaDB/PostgreSQL e maneggevolezza con il terminale Linux.\nSe hai esperienza con alcune di queste cose, parlane liberamente.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre ad amministrare server.'), - ('position.comunication-and-social.description', 'it', 'Hai buone capacità di comunicazione e organizzazione, ti piace il nostro team e vuoi aiutarci a migliorare la nostra immagine? Questo è il posto che fa per te!\nCerchiamo qualcuno che possa svolgere le seguenti mansioni:\n- Scrittura e pubblicazione di post e storie per i nostri social\n- Programmazione temporale dei contenuti\n- Definizione della strategia di comunicazione in generale\n- Brainstorming di idee per podcast e video tematici\n- Intrattenimento di rapporti con terzi, altre associazioni e ospiti\nTi troverai a lavorare in sinergia con i creatori di contenuti digitali, che si occuperanno di produrre materiale grafico e video (o potrai occupartene tu stesso se ti va e ne sei capace).\n Ora parlaci di te.\n Descrivi qualsiasi tua esperienza nel gestire pagine o profili (e.g. personali, di attività commerciali, di meme nonsense, etc...) sui social network, in particolare Facebook e Instagram.\n Menziona anche i risultati raggiunti con tali attività promozionali, se possibile.\n Se dovessi spiegare in due righe cosa fa il team, cosa diresti?\n Indica anche quanto tempo potresti dedicare a queste attività e se hai qualche altro interesse.'), - ('position.digital-content-creation.description', 'it', 'Sprigiona la tua vena creativa entrando nel nostro team! Abbiamo bisogno di figure che si occupino di realizzare:\n- Design di manifesti, infografiche, biglietti da visita\n- Elementi grafici per pagine web e social network\n- Sfondi, icone e immagini personalizzate per i nostri software\n- Redesign e modding dei case dei computer riparati\n- Jingle e motivi musicali per i nostri video\n Se almeno una, o più di una, di queste attività di interessano, questo è il ruolo adatto.\n Parla di qualsiasi esperienza artistica, inclusi progetti personali (anche piccoli) o esami sostenuti.\n Se vuoi mostrarci alcuni dei tuoi lavori passati, abbozzi, concepts o hai idee su come migliorare il volto del team, non esitare!\n Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), - ('position.creative-reuse.description', 'it', 'Non tutti i computer che ci arrivano sono riparabili, ma vorremmo comunque minimizzare la quantità di materiale che finisce nel bidone.\n Se hai manualità e/o esperienze nel riuso creativo e/o making è il momento di dirlo.\n Puoi anche aggiungere se hai idee su come potremmo riutilizzare case vuoti, schede madri dall''estetica peculiare o i piatti a specchio di hard disk rotti.\nAccenna anche a che metodo seguiresti per progettare queste cose.\nMenziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), - ('position.other.description', 'it', 'Stupiscici.'), - ('position.hardware-repair.description', 'en', 'Describe anything about your experience in computer repairs (desktop or laptops), or building computers, or soldering of electronic components.\nIf you don''t know something, what do you do to learn it yourself, usually? You can give us some examples as well.\n If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\n Mention how much time you have for team activities, too, and if you have any other hobby or interests other than repairing computers.'), - ('position.electronics.description', 'en', 'One of the goals of the team is to develop electronic tools for low-level hardware diagnostics and the reuse of recovered hardware.\nWhat''s your relationship with electronics? Are you more interested in digital or analog (especially power) electronics do you like both equally?\nIf you ever made any electronic circuit or project other than those for academic courses, tell us. Explain also the method you''ve used to build them (breadboard, prototype board, PCB, through-hole components or SMD, etc...)\nTell us if you have experience with any Electronic Design Automation software (project, simulation, test and verification, etc...).\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than designing circuits.'), - ('position.python-software-dev.description', 'en', 'Describe any prior experience you have in coding in Python, and don''t hesitate sharing your Github account in your letter if you have one!\nMany of the internal tools of the team have been created with python, for example [Peracotta](https://github.com/WEEE-Open/peracotta) and [Pesto](https://github.com/WEEE-Open/pesto). If you know how to work with qt and interact with APIs, you are the person we are looking for!\nYou could mention if you have ever used virtual environments, collaborated with someone else on a software project, or if you can code in other programming languages.\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), - ('position.php-software-dev.description', 'en', 'Our main PHP projects are [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) and [crauto](https://github.com/WEEE-Open/crauto), you can have a look so you know what you''re going to work on.\nDescribe any prior experience you have in coding in PHP, and don''t hesitate sharing your Github account in your letter if you have one!\nEven "for the exam of ... I created a program that does ..." or "I made the website for the bakery around the corner" are fine.\nIf you know other programming languages, don''t hesitate to share your experience.\nYou can also mention whether you know other programming languages or have ever participated to other collaborative projects.\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), - ('position.javascript-software-dev.description', 'en', 'Since a couple of years we started migrating some of our projects to Node.js. We are looking for people capable of working with express, MySQL and creating APIs.\nTalk about any experience you have with JavaScript (backend, NodeJS apps, and frontend, vanilla JS, or any framework, especially Vue.js). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter!\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), - ('position.vuejs-software-dev.description', 'en', 'Since a couple of years we started migrating some of our projects to Vue.js. We are looking for people capable of creating SPAs and PWAs with Vue.js integrated with backend services.\nTalk about any experience you have with JavaScript (frontend, vanilla JS, Vue.js or any other framework, and backend, NodeJS). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter!\nBesides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc...\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), - ('position.machine-learning-engineer.description', 'en', 'From 2021-2022, thanks to the experience gained by some team members on the subject, and the launch of our project of software for students, we are looking for a figure who can take care of the creation of some models aimed at improving the user experience of the web platforms we intend to develop, in particular in the field of Natural Language Processing.\nIf you know any of Python, PyTorch, Tensorflow, Keras, Jupyter Notebook and GitHub, we are looking for you!\nIf you can also research scientific papers on new technologies on ArXiv or similar platforms, or you want to learn how to do it, great!\nIf you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair.\nMention how much time you have for team activities, too, and if you have any other hobby or interests besides designing AIs.'), - ('position.sysadmin.description', 'en', 'Our sysadmins ensure that IT tools - which are essential for the team - are operating at peak efficiency.\nTo do this, they manage our servers, collaborate with developers to deploy and update the software we made, monitor the health of our infrastructure and ensure that our data is safe from attacks and other disasters.\nSysadmins oversee the entire service life cycle, from server configuration through Ansible, to containerization and service management, to routine maintenance procedures.\nThe competences you will use are general knowledge of Ansible and containes, familiarity with managing and configuring common server software like Nginx, PHP and MariaDB/PostgreSQL, and familiarity with the Linux terminal.\nIf you have any experience with this stuff, it''s time to talk about it.\nMention how much time you have for team activities, too, and if you have any other hobby or interests other than managing servers.'), - ('position.comunication-and-social.description', 'en', 'Do you have good communication and organizational skills, you like our team and you want to help us improve our public image? This is the right place!\nWe are looking for someone to perform the following tasks:\n- Write and publish posts/stories for our social media\n- Organize temporal scheduling of contents\n- Define the communication strategy in general\n- Come up with new ideas for podcasts and videos\n- Maintain relations with third parties, other associations and guests\nYou will work together with digital content creators, who will provide graphic and video resources (or you can make them yourself, if you have the skills).\nNow tell us about yourself.\nDescribe any experience you have in managing pages or profiles (e.g. personal, business, of random memes, etc...) on social networks, in particular Facebook and Instagram.\nMention also the results you achieved with such promotional activities, if you can.\nIf you had to explain in a few lines what does the team do, what would you write?\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), - ('position.digital-content-creation.description', 'en', 'Unleash your inner creativity by joining our team! We are looking for people that will produce:\n- Designs for posters, infographics, business cards\n- Graphic elements for web pages and social networks\n- Backgrounds, icons and custom images for our software\n-Redesigns and modding of repaired computer cases\n- Jingles and music for our videos\nIf you''re interested in at least one, or more than one, of these activities, this is the role for you.\nTell us about any experience you have with arts, including personal projects (even small ones) or exams.\nIf you want to show us some of your past works, sketches, concepts or you have any idea on how to improve the teams public "face", do not hesitate and tell us!\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), - ('position.creative-reuse.description', 'en', 'Not all the computers that we get are repairable, but we''d still like to minimize the quantity of stuff that goes into the trash can.\nIf you have any DIY skills and/or experiences in creative reuse and/or "making" this is the moment to tell us.\nYou can also add some ideas (if you have any) on how we could reuse empty cases, particularly beautiful motherboards or shiny plates from broken hard disk drives.\nPoint out which method you''d follow to develop these projects, too.\nMention how much time you have for team activities, too, and if you have any other hobby or interests.'), - ('position.other.description', 'en', 'Surprise us.'); + ('position.hardware-repair.name', 'it-IT', 'Riparazione hardware'), + ('position.electronics.name', 'it-IT', 'Elettronica'), + ('position.python-software-dev.name', 'it-IT', 'Sviluppo software Python'), + ('position.php-software-dev.name', 'it-IT', 'Sviluppo software PHP'), + ('position.javascript-software-dev.name', 'it-IT', 'Sviluppo software JavaScript'), + ('position.vuejs-software-dev.name', 'it-IT', 'Sviluppo software Vue.js'), + ('position.machine-learning-engineer.name', 'it-IT', 'Machine Learning Engineer'), + ('position.sysadmin.name', 'it-IT', 'Sysadmin'), + ('position.communication-and-social.name', 'it-IT', 'Comunicazione e social'), + ('position.digital-content-creation.name', 'it-IT', 'Creazione di contenuti digitali'), + ('position.creative-reuse.name', 'it-IT', 'Riuso creativo'), + ('position.other.name', 'it-IT', 'Altro'), + ('position.hardware-repair.name', 'en-US', 'Hardware repair'), + ('position.electronics.name', 'en-US', 'Electronics'), + ('position.python-software-dev.name', 'en-US', 'Python software development'), + ('position.php-software-dev.name', 'en-US', 'PHP software development'), + ('position.javascript-software-dev.name', 'en-US', 'JavaScript software development'), + ('position.vuejs-software-dev.name', 'en-US', 'Vue.js software development'), + ('position.machine-learning-engineer.name', 'en-US', 'Machine Learning Engineer'), + ('position.sysadmin.name', 'en-US', 'Sysadmin'), + ('position.communication-and-social.name', 'en-US', 'Communication and social'), + ('position.digital-content-creation.name', 'en-US', 'Digital content creation'), + ('position.creative-reuse.name', 'en-US', 'Creative reuse'), + ('position.other.name', 'en-US', 'Other'), + ('position.hardware-repair.description', 'it-IT', 'Descrivi qualsiasi tua esperienza di riparazione di computer (fissi o portatili), o assemblaggio, o saldatura di componenti elettronici. + +Se non sai qualcosa, cosa fai per imparare in autonomia? Puoi anche fornire degli esempi. + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a riparare computer.'), + ('position.electronics.description', 'it-IT', 'Uno degli obiettivi del team è la progettazione di strumenti elettronici per la diagnostica a basso livello e il riuso dell''hardware recuperato. + +Qual è il tuo rapporto con il mondo dell''elettronica? Ti interessa di più l''elettronica digitale o analogica (specialmente di potenza) o ti interessano entrambe? + +Se hai mai realizzato qualche circuito o progetto oltre a quelli nei laboratori didattici, parlane con riferimento anche al metodo con cui è stato realizzato (breadboard, millefori, circuito stampato, componenti through-hole o SMD, etc...). + +Indica anche se hai dimestichezza con qualche software di Electronic Design Automation (progettazione, simulazione, test e verifica, etc...). + +Menziona anche quanto tempo potresti dedicare al team e se fai qualcos''altro di interessante nel tempo libero oltre a progettare circuiti.'), + ('position.python-software-dev.description', 'it-IT', 'Descrivi qualsiasi tua esperienza nel programmare in Python, e se hai un account su Github non esitare a condividerlo nella tua lettera! + +Molti degli strumenti interni del team sono stati creati con python, per esempio la [Peracotta](https://github.com/WEEE-Open/peracotta) ed il [Pesto](https://github.com/WEEE-Open/pesto). Se conosci come lavorare con qt ed interagire con API, sei la persona che stiamo cercando! + +Potresti menzionare se hai mai usato virtual environments, collaborato con qualcuno su un progetto software, o se sai scrivere in altri linguaggi che usiamo nel team, come JavaScript, PHP e Bash o altri ancora. + +Oltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)? + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.php-software-dev.description', 'it-IT', 'I principali progetti PHP del team sono [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) e [crauto](https://github.com/WEEE-Open/crauto), puoi darci già un''occhiata per sapere a cosa vai incontro. + +Descrivi qualsiasi tua esperienza nel programmare in PHP, e se hai un account su Github non esitare a condividerlo nella tua lettera! + +Va bene anche "per l''esame di ... ho creato un programma che fa ..." o "ho fatto il sito web per la panetteria all''angolo". + +Se conosci anche altri linguaggi non esitare a condividere la tua esperienza. + +Puoi anche menzionare se conosci altri linguaggi di programmazione o hai mai partecipato ad altri progetti collaborativi. + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.javascript-software-dev.description', 'it-IT', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Node.js. Cerchiamo persone capaci di lavorare con express, MySQL e creare API. + +Parla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (backend, app NodeJS, e frontend, sia vanilla JS, sia framework, in particolare Vue.js). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera! + +Oltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)? + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.vuejs-software-dev.description', 'it-IT', 'Da un paio d''anni abbiamo iniziato a migrare alcuni dei nostri progetti a Vue.js. Cerchiamo persone capaci di creare SPA e PWA con Vue.js integrate con servizi backend. + +Parla di qualsiasi tua esperienza riguardante l''utilizzo di JavaScript (frontend, vanilla JS, Vue.js or any other framework, e backend, NodeJS). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera! + +Oltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)? + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.'), + ('position.machine-learning-engineer.description', 'it-IT', 'Dal 2021-2022, grazie all''esperienza acquisita da alcuni membri del team in materia, e al lancio del nostro progetto di software per studenti, cerchiamo una figura che possa occuparsi della creazione di alcuni modelli volti a migliorare l''esperienza utente delle piattaforme web che abbiamo intenzione di sviluppare, in particolare nell''ambito del Natural Language Processing. + +Se hai delle conoscenze riguardo a qualcuno tra Python, PyTorch, Tensorflow, Keras, Jupyter Notebook e GitHub, stiamo cercando proprio te! + +Se in più sai ricercare paper scientifici su nuove tecnologie su ArXiv o simili, o hai intenzione di imparare a farlo, fantastico! + +Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a progettare intelligenze artificiali.'), + ('position.sysadmin.description', 'it-IT', 'Il compito dei sysadmin è assicurarsi che gli strumenti informatici a cui il team si appoggia per le sue operazioni siano al massimo della loro efficienza. + +Per fare questo gestiscono i server che ospitano i nostri servizi, collaborano con gli sviluppatori per deployare e aggiornare i software che creiamo, monitorano lo stato di salute della nostra infrastruttura e si assicurano che i nostri dati siano protetti da attacchi e perdite. + +I sysadmin seguono l''intero ciclo di vita dei servizi, dalla configurazione del server tramite Ansible, passando per la containerizzazione e gestione dei servizi, alle normali procedure di manutenzione. + +Le competenze esercitate sono una generale conoscenza di Ansible e della containerizzazione, familiarità con la gestione e configurazione di software per server comuni come Nginx, PHP e MariaDB/PostgreSQL e maneggevolezza con il terminale Linux. + +Se hai esperienza con alcune di queste cose, parlane liberamente. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre ad amministrare server.'), + ('position.communication-and-social.description', 'it-IT', 'Hai buone capacità di comunicazione e organizzazione, ti piace il nostro team e vuoi aiutarci a migliorare la nostra immagine? Questo è il posto che fa per te! + +Cerchiamo qualcuno che possa svolgere le seguenti mansioni: + +- Scrittura e pubblicazione di post e storie per i nostri social +- Programmazione temporale dei contenuti +- Definizione della strategia di comunicazione in generale +- Brainstorming di idee per podcast e video tematici +- Intrattenimento di rapporti con terzi, altre associazioni e ospiti + +Ti troverai a lavorare in sinergia con i creatori di contenuti digitali, che si occuperanno di produrre materiale grafico e video (o potrai occupartene tu stesso se ti va e ne sei capace). + +Ora parlaci di te. + +Descrivi qualsiasi tua esperienza nel gestire pagine o profili (e.g. personali, di attività commerciali, di meme nonsense, etc...) sui social network, in particolare Facebook e Instagram. + +Menziona anche i risultati raggiunti con tali attività promozionali, se possibile. + +Se dovessi spiegare in due righe cosa fa il team, cosa diresti? + +Indica anche quanto tempo potresti dedicare a queste attività e se hai qualche altro interesse.'), + ('position.digital-content-creation.description', 'it-IT', 'Sprigiona la tua vena creativa entrando nel nostro team! Abbiamo bisogno di figure che si occupino di realizzare: + +- Design di manifesti, infografiche, biglietti da visita +- Elementi grafici per pagine web e social network +- Sfondi, icone e immagini personalizzate per i nostri software +- Redesign e modding dei case dei computer riparati +- Jingle e motivi musicali per i nostri video + +Se almeno una, o più di una, di queste attività di interessano, questo è il ruolo adatto. + +Parla di qualsiasi esperienza artistica, inclusi progetti personali (anche piccoli) o esami sostenuti. + +Se vuoi mostrarci alcuni dei tuoi lavori passati, abbozzi, concepts o hai idee su come migliorare il volto del team, non esitare! + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), + ('position.creative-reuse.description', 'it-IT', 'Non tutti i computer che ci arrivano sono riparabili, ma vorremmo comunque minimizzare la quantità di materiale che finisce nel bidone. + +Se hai manualità e/o esperienze nel riuso creativo e/o making è il momento di dirlo. + +Puoi anche aggiungere se hai idee su come potremmo riutilizzare case vuoti, schede madri dall''estetica peculiare o i piatti a specchio di hard disk rotti. + +Accenna anche a che metodo seguiresti per progettare queste cose. + +Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.'), + ('position.other.description', 'it-IT', 'Stupiscici.'), + ('position.hardware-repair.description', 'en-US', 'Describe anything about your experience in computer repairs (desktop or laptops), or building computers, or soldering of electronic components. + +If you don''t know something, what do you do to learn it yourself, usually? You can give us some examples as well. + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than repairing computers.'), + ('position.electronics.description', 'en-US', 'One of the goals of the team is to develop electronic tools for low-level hardware diagnostics and the reuse of recovered hardware. + +What''s your relationship with electronics? Are you more interested in digital or analog (especially power) electronics do you like both equally? + +If you ever made any electronic circuit or project other than those for academic courses, tell us. Explain also the method you''ve used to build them (breadboard, prototype board, PCB, through-hole components or SMD, etc...) + +Tell us if you have experience with any Electronic Design Automation software (project, simulation, test and verification, etc...). + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than designing circuits.'), + ('position.python-software-dev.description', 'en-US', 'Describe any prior experience you have in coding in Python, and don''t hesitate sharing your Github account in your letter if you have one! + +Many of the internal tools of the team have been created with python, for example [Peracotta](https://github.com/WEEE-Open/peracotta) and [Pesto](https://github.com/WEEE-Open/pesto). If you know how to work with qt and interact with APIs, you are the person we are looking for! + +You could mention if you have ever used virtual environments, collaborated with someone else on a software project, or if you can code in other programming languages. + +Besides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc... + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.php-software-dev.description', 'en-US', 'Our main PHP projects are [Tarallo](https://github.com/WEEE-Open/tarallo), [WEEEHire](https://github.com/WEEE-Open/WEEEHire-ng) and [crauto](https://github.com/WEEE-Open/crauto), you can have a look so you know what you''re going to work on. + +Describe any prior experience you have in coding in PHP, and don''t hesitate sharing your Github account in your letter if you have one! + +Even "for the exam of ... I created a program that does ..." or "I made the website for the bakery around the corner" are fine. + +If you know other programming languages, don''t hesitate to share your experience. + +You can also mention whether you know other programming languages or have ever participated to other collaborative projects. + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.javascript-software-dev.description', 'en-US', 'Since a couple of years we started migrating some of our projects to Node.js. We are looking for people capable of working with express, MySQL and creating APIs. + +Talk about any experience you have with JavaScript (backend, NodeJS apps, and frontend, vanilla JS, or any framework, especially Vue.js). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! + +And if you have a Github account don''t hesitate to share it in your letter! + +Besides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc... + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.vuejs-software-dev.description', 'en-US', 'Since a couple of years we started migrating some of our projects to Vue.js. We are looking for people capable of creating SPAs and PWAs with Vue.js integrated with backend services. + +Talk about any experience you have with JavaScript (frontend, vanilla JS, Vue.js or any other framework, and backend, NodeJS). Do you know other languages we use in the team, like Python, PHP and Bash, or others? Mention them! And if you have a Github account don''t hesitate to share it in your letter! + +Besides attending lectures, what do you do to learn? E.g. watching or reading tutorials online, starting to write code and looking things up on Stack Overflow as you go, etc... + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than typing code.'), + ('position.machine-learning-engineer.description', 'en-US', 'From 2021-2022, thanks to the experience gained by some team members on the subject, and the launch of our project of software for students, we are looking for a figure who can take care of the creation of some models aimed at improving the user experience of the web platforms we intend to develop, in particular in the field of Natural Language Processing. + +If you know any of Python, PyTorch, Tensorflow, Keras, Jupyter Notebook and GitHub, we are looking for you! + +If you can also research scientific papers on new technologies on ArXiv or similar platforms, or you want to learn how to do it, great! + +If you ever used Linux, feel free to talk about it: we install Linux on every computer that we repair. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests besides designing AIs.'), + ('position.sysadmin.description', 'en-US', 'Our sysadmins ensure that IT tools - which are essential for the team - are operating at peak efficiency. + +To do this, they manage our servers, collaborate with developers to deploy and update the software we made, monitor the health of our infrastructure and ensure that our data is safe from attacks and other disasters. + +Sysadmins oversee the entire service life cycle, from server configuration through Ansible, to containerization and service management, to routine maintenance procedures. + +The competences you will use are general knowledge of Ansible and containes, familiarity with managing and configuring common server software like Nginx, PHP and MariaDB/PostgreSQL, and familiarity with the Linux terminal. + +If you have any experience with this stuff, it''s time to talk about it. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests other than managing servers.'), + ('position.communication-and-social.description', 'en-US', 'Do you have good communication and organizational skills, you like our team and you want to help us improve our public image? This is the right place! + +We are looking for someone to perform the following tasks: + +- Write and publish posts/stories for our social media +- Organize temporal scheduling of contents +- Define the communication strategy in general +- Come up with new ideas for podcasts and videos +- Maintain relations with third parties, other associations and guests + +You will work together with digital content creators, who will provide graphic and video resources (or you can make them yourself, if you have the skills). + +Now tell us about yourself. + +Describe any experience you have in managing pages or profiles (e.g. personal, business, of random memes, etc...) on social networks, in particular Facebook and Instagram. + +Mention also the results you achieved with such promotional activities, if you can. + +If you had to explain in a few lines what does the team do, what would you write? + +Mention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.digital-content-creation.description', 'en-US', 'Unleash your inner creativity by joining our team! We are looking for people that will produce: + +- Designs for posters, infographics, business cards +- Graphic elements for web pages and social networks +- Backgrounds, icons and custom images for our software +-Redesigns and modding of repaired computer cases +- Jingles and music for our videos + +If you''re interested in at least one, or more than one, of these activities, this is the role for you. + +Tell us about any experience you have with arts, including personal projects (even small ones) or exams. + +If you want to show us some of your past works, sketches, concepts or you have any idea on how to improve the teams public "face", do not hesitate and tell us! + +Mention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.creative-reuse.description', 'en-US', 'Not all the computers that we get are repairable, but we''d still like to minimize the quantity of stuff that goes into the trash can. + +If you have any DIY skills and/or experiences in creative reuse and/or "making" this is the moment to tell us. + +You can also add some ideas (if you have any) on how we could reuse empty cases, particularly beautiful motherboards or shiny plates from broken hard disk drives. + +Point out which method you''d follow to develop these projects, too. + +Mention how much time you have for team activities, too, and if you have any other hobby or interests.'), + ('position.other.description', 'en-US', 'Surprise us.'); @@ -89,4 +315,6 @@ create trigger if not exists update_positions_translation begin update translations set value = concat('position.',new.id,'.name') where id = concat('position.',old.id,'.name'); update translations set value = concat('position.',new.id,'.description') where id = concat('position.',old.id,'.description'); - end; \ No newline at end of file + end; + +delete from config where id = 'rolesAvailable'; \ No newline at end of file diff --git a/src/Database.php b/src/Database.php index b0cf47e..f01c8b1 100644 --- a/src/Database.php +++ b/src/Database.php @@ -873,35 +873,66 @@ public function getAllAssignedInterviewsForTable(): array * * @return array Array of associative arrays with id, availability, printable name and description */ - public function getPositions($lang) + public function getPositions($lang = null) { if ($lang) { - $stmt = $this->db->prepare('SELECT - p.id AS id, + $stmt = $this->db->prepare("SELECT + p.id, p.available, - MAX(CASE - WHEN t.id LIKE 'position.' || p.id || '.name' THEN t.value - ELSE NULL - END) AS name, - MAX(CASE - WHEN t.id LIKE 'position.' || p.id || '.description' THEN t.value - ELSE NULL - END) AS description + t_name.value AS name, + t_desc.value AS description FROM positions p LEFT JOIN - translations t - ON - t.id LIKE 'position.' || p.id || '.%' - GROUP BY - p.id, p.available;'); + translations t_name ON t_name.id = 'position.' || p.id || '.name' AND t_name.lang = :lang + LEFT JOIN + translations t_desc ON t_desc.id = 'position.' || p.id || '.description' AND t_desc.lang = :lang"); $stmt->bindValue(':lang', $lang, SQLITE3_TEXT); } else { - $stmt = $this->db->prepare('SELECT id, availability FROM positions'); + $stmt = $this->db->prepare('SELECT id, available FROM positions'); } $result = $stmt->execute(); - return $result->fetchArray(SQLITE3_ASSOC); + $positions = []; + while ($row = $result->fetchArray(SQLITE3_ASSOC)) { + $positions[] = $row; + } + return $positions; + } + + /** + * Get available positions + * @param string $lang Language (optional), if not set, won't provide name or description + * + * @return array Array of associative arrays with id, availability, printable name and description + */ + public function getAvailablePositions($lang = null) + { + if ($lang) { + $stmt = $this->db->prepare("SELECT + p.id, + p.available, + t_name.value AS name, + t_desc.value AS description + FROM + positions p + LEFT JOIN + translations t_name ON t_name.id = 'position.' || p.id || '.name' AND t_name.lang = :lang + LEFT JOIN + translations t_desc ON t_desc.id = 'position.' || p.id || '.description' AND t_desc.lang = :lang + WHERE + p.available = 1"); + $stmt->bindValue(':lang', $lang, SQLITE3_TEXT); + } else { + $stmt = $this->db->prepare('SELECT id, available FROM positions'); + } + $result = $stmt->execute(); + + $positions = []; + while ($row = $result->fetchArray(SQLITE3_ASSOC)) { + $positions[] = $row; + } + return $positions; } /** @@ -912,33 +943,25 @@ public function getPositions($lang) * * @return array Associative array with id, availability, printable name and description */ - public function getPosition($id, $lang) + public function getPosition($id, $lang = null) { if ($lang) { - $stmt = $this->db->prepare('SELECT - p.id AS id, + $stmt = $this->db->prepare("SELECT + p.id, p.available, - MAX(CASE - WHEN t.id LIKE 'position.' || p.id || '.name' THEN t.value - ELSE NULL - END) AS name, - MAX(CASE - WHEN t.id LIKE 'position.' || p.id || '.description' THEN t.value - ELSE NULL - END) AS description + t_name.value AS name, + t_desc.value AS description FROM positions p LEFT JOIN - translations t - ON - t.id LIKE 'position.' || p.id || '.%' + translations t_name ON t_name.id = 'position.' || p.id || '.name' AND t_name.lang = :lang + LEFT JOIN + translations t_desc ON t_desc.id = 'position.' || p.id || '.description' AND t_desc.lang = :lang WHERE - p.id = :id - GROUP BY - p.id, p.available;'); + p.id = :id"); $stmt->bindValue(':lang', $lang, SQLITE3_TEXT); } else { - $stmt = $this->db->prepare('SELECT id, availability FROM positions WHERE id = :id'); + $stmt = $this->db->prepare('SELECT id, available FROM positions WHERE id = :id'); } $stmt->bindValue(':id', $id, SQLITE3_INTEGER); $result = $stmt->execute(); diff --git a/src/PageForm.php b/src/PageForm.php index 0ed9660..3ece990 100644 --- a/src/PageForm.php +++ b/src/PageForm.php @@ -18,11 +18,22 @@ public function handle(ServerRequestInterface $request): ResponseInterface $db = new Database(); $expiry = $db->getConfigValue('expiry'); - $rolesAvailable = $db->getConfigValue('rolesAvailable'); - $rolesAvailableCount = $rolesAvailable ? count(explode('|', $rolesAvailable)) : 0; + $positions = $db->getPositions(Template::getLocale() ?? 'en_US'); // [ ['id' => 1, 'name' => 'name', 'description' => 'description', 'available' => 1], ...]] - if ($rolesAvailableCount === 0) { - $expiry = 1; + if (count($positions) === 0) { + //$expiry = 1; + } else { + // check that there is at least one position available + $isAtLeastOneAvailable = false; + for ($i = 0; $i < count($positions); $i++) { + if ($positions[$i]['available'] == 1) { + $isAtLeastOneAvailable = true; + break; + } + } + if (!$isAtLeastOneAvailable) { + $expiry = 1; + } } // Get from DB -> if "unixtime.now >= expiry date" then candidate_close : else show the form @@ -41,7 +52,7 @@ public function handle(ServerRequestInterface $request): ResponseInterface ]; foreach ($checkboxes as $attr) { if (!isset($POST[$attr]) || $POST[$attr] !== 'true') { - return new HtmlResponse($template->render('form', ['error' => 'consent', 'rolesAvailable' => $rolesAvailable]), 400); + return new HtmlResponse($template->render('form', ['error' => 'consent', 'positions' => $positions]), 400); } } @@ -62,23 +73,23 @@ public function handle(ServerRequestInterface $request): ResponseInterface $user->$attr = trim($user->$attr); } } else { - return new HtmlResponse($template->render('form', ['error' => 'form', 'rolesAvailable' => $rolesAvailable]), 400); + return new HtmlResponse($template->render('form', ['error' => 'form', 'positions' => $positions]), 400); } } $user->submitted = time(); $user->matricola = strtolower($user->matricola); if (preg_match('#^[sd]\d+$#', $user->matricola) !== 1) { - return new HtmlResponse($template->render('form', ['error' => 'form', 'rolesAvailable' => $rolesAvailable]), 400); + return new HtmlResponse($template->render('form', ['error' => 'form', 'positions' => $positions]), 400); } try { list($id, $token) = $db->addUser($user); } catch (DuplicateUserException $e) { - return new HtmlResponse($template->render('form', ['error' => 'duplicate', 'rolesAvailable' => $rolesAvailable]), 400); + return new HtmlResponse($template->render('form', ['error' => 'duplicate', 'positions' => $positions]), 400); } catch (DatabaseException $e) { - return new HtmlResponse($template->render('form', ['error' => 'database', 'rolesAvailable' => $rolesAvailable]), 500); + return new HtmlResponse($template->render('form', ['error' => 'database', 'positions' => $positions]), 500); } catch (Exception $e) { - return new HtmlResponse($template->render('form', ['error' => 'wtf', 'rolesAvailable' => $rolesAvailable]), 500); + return new HtmlResponse($template->render('form', ['error' => 'wtf', 'positions' => $positions]), 500); } $query = http_build_query(['id' => $id, 'token' => $token]); @@ -105,6 +116,6 @@ public function handle(ServerRequestInterface $request): ResponseInterface return new RedirectResponse("/status.php?$query", 303); } - return new HtmlResponse($template->render('form', ['rolesAvailable' => $rolesAvailable])); + return new HtmlResponse($template->render('form', ['positions' => $positions])); } } diff --git a/src/Template.php b/src/Template.php index 8a38fda..ba8cc42 100644 --- a/src/Template.php +++ b/src/Template.php @@ -85,10 +85,12 @@ public static function create(UriInterface $uri): Engine * * @return string */ - private static function getLocale(): string + static function getLocale(): string { // Must be here, or $_SESSION is not available - session_start(); + if (session_status() == PHP_SESSION_NONE) { + session_start(); + } if (isset($_SESSION['locale'])) { return $_SESSION['locale']; } diff --git a/templates/form.php b/templates/form.php index 9e6492f..bd174e1 100644 --- a/templates/form.php +++ b/templates/form.php @@ -1,15 +1,16 @@ layout('base', ['title' => __('Compila il questionario')]) ?>
= __('Al momento alcune aree del team sono al completo, è possibile candidarsi solo nelle aree selezionabili dall\'elenco. In futuro le aree disponibili potrebbero cambiare senza preavviso.') ?>
=__('Seleziona l\'area del team che più ti interessa e qui compariranno delle linee guida su cosa scrivere.') ?>
=__('Descrivi qualsiasi tua esperienza di riparazione di computer (fissi o portatili), o assemblaggio, o saldatura di componenti elettronici.')?>
-=__('Se non sai qualcosa, cosa fai per imparare in autonomia? Puoi anche fornire degli esempi.')?>
-=__('Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.')?>
-=__('Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a riparare computer.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('Uno degli obiettivi del team è la progettazione di strumenti elettronici per la diagnostica a basso livello e il riuso dell\'hardware recuperato.') ?>
-=__('Qual è il tuo rapporto con il mondo dell\'elettronica? Ti interessa di più l\'elettronica digitale o analogica (specialmente di potenza) o ti interessano entrambe?') ?>
-=__('Se hai mai realizzato qualche circuito o progetto oltre a quelli nei laboratori didattici, parlane con riferimento anche al metodo con cui è stato realizzato (breadboard, millefori, circuito stampato, componenti through-hole o SMD, etc...).')?>
-=__('Indica anche se hai dimestichezza con qualche software di Electronic Design Automation (progettazione, simulazione, test e verifica, etc...).') ?>
-=__('Menziona anche quanto tempo potresti dedicare al team e se fai qualcos\'altro di interessante nel tempo libero oltre a progettare circuiti.') ?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('Il compito dei sysadmin è assicurarsi che gli strumenti informatici a cui il team si appoggia per le sue operazioni siano al massimo della loro efficienza.') ?>
-=__('Per fare questo gestiscono i server che ospitano i nostri servizi, collaborano con gli sviluppatori per deployare e aggiornare i software che creiamo, monitorano lo stato di salute della nostra infrastruttura e si assicurano che i nostri dati siano protetti da attacchi e perdite') ?>
-=__('I sysadmin seguono l\'intero ciclo di vita dei servizi, dalla configurazione del server tramite Ansible, passando per la containerizzazione e gestione dei servizi, alle normali procedure di manutenzione.') ?>
-=__('Le competenze esercitate sono una generale conoscenza di Ansible e della containerizzazione, familiarità con la gestione e configurazione di software per server comuni come Nginx, PHP e MariaDB/PostgreSQL e maneggevolezza con il terminale Linux.') ?>
-=__('Se hai esperienza con alcune di queste cose, parlane liberamente.')?>
-=__('Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre ad amministrare server.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('Descrivi qualsiasi tua esperienza nel programmare in Python, e se hai un account su Github non esitare a condividerlo nella tua lettera!')?>
-=__('Molti degli strumenti interni del team sono stati creati con python, per esempio la Peracotta ed il Pesto. Se conosci come lavorare con qt ed interagire con API, sei la persona che stiamo cercando!')?>
-=__('Potresti menzionare se hai mai usato virtual environments, collaborato con qualcuno su un progetto software, o se sai scrivere in altri linguaggi che usiamo nel team, come JavaScript, PHP e Bash o altri ancora.')?>
-=__('Oltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?')?>
-=__('Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.')?>
-=__('Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('I principali progetti PHP del team sono Tarallo, WEEEHire e crauto, puoi darci già un\'occhiata per sapere a cosa vai incontro.')?>
-=__('Descrivi qualsiasi tua esperienza nel programmare in PHP, e se hai un account su Github non esitare a condividerlo nella tua lettera!')?>
-=__('Va bene anche "per l\'esame di ... ho creato un programma che fa ..." o "ho fatto il sito web per la panetteria all\'angolo".') ?>
-=__('Se conosci anche altri linguaggi non esitare a condividere la tua esperienza.') ?>
-=__('Puoi anche menzionare se conosci altri linguaggi di programmazione o hai mai partecipato ad altri progetti collaborativi.')?>
-=__('Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.')?>
-=__('Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('Da un paio d\'anni abbiamo iniziato a migrare alcuni dei nostri progetti a Node.js. Cerchiamo persone capaci di lavorare con express, MySQL e creare API.')?>
-=__('Parla di qualsiasi tua esperienza riguardante l\'utilizzo di JavaScript (backend, app NodeJS, e frontend, sia vanilla JS, sia framework, in particolare Vue.js). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!')?>
-=__('Oltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?')?>
-=__('Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.')?>
-=__('Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('Da un paio d\'anni abbiamo iniziato a migrare alcuni dei nostri progetti a Vue.js. Cerchiamo persone capaci di creare SPA e PWA con Vue.js integrate con servizi backend.')?>
-=__('Parla di qualsiasi tua esperienza riguardante l\'utilizzo di JavaScript (frontend, vanilla JS, Vue.js or any other framework, e backend, NodeJS). Conosci altri linguaggi che usiamo in team, come Python, PHP e Bash, o altri ancora? Menzionali pure! E se hai un account su Github non esitare a condividerlo nella tua lettera!')?>
-=__('Oltre a seguire le lezioni, che metodo usi per imparare (e.g. seguire tutorial su internet, iniziare a scrivere codice e cercare man mano su Stack Overflow, etc...)?')?>
-=__('Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.')?>
-=__('Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a digitare codice.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('Non tutti i computer che ci arrivano sono riparabili, ma vorremmo comunque minimizzare la quantità di materiale che finisce nel bidone.')?>
-=__('Se hai manualità e/o esperienze nel riuso creativo e/o making è il momento di dirlo.')?>
-=__('Puoi anche aggiungere se hai idee su come potremmo riutilizzare case vuoti, schede madri dall\'estetica peculiare o i piatti a specchio di hard disk rotti.') ?>
-=__('Accenna anche a che metodo seguiresti per progettare queste cose.')?>
-=__('Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('Dal 2021-2022, grazie all\'esperienza acquisita da alcuni membri del team in materia, e al lancio del nostro progetto di software per studenti, cerchiamo una figura che possa occuparsi della creazione di alcuni modelli volti a migliorare l\'esperienza utente delle piattaforme web che abbiamo intenzione di sviluppare, in particolare nell\'ambito del Natural Language Processing.')?>
-=__('Se hai delle conoscenze riguardo a qualcuno tra Python, PyTorch, Tensorflow, Keras, Jupyter Notebook e GitHub, stiamo cercando proprio te!')?>
-=__('Se in più sai ricercare paper scientifici su nuove tecnologie su ArXiv o simili, o hai intenzione di imparare a farlo, fantastico!') ?>
-=__('Se hai mai usato Linux, parlane liberamente: su tutti i computer che ripariamo installiamo Linux.')?>
-=__('Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero oltre a progettare intelligenze artificiali.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire, e se hai già lavorato su qualche progetto non esitare a condividerne il link nella tua lettera!.')?>
-=__('Hai buone capacità di comunicazione e organizzazione, ti piace il nostro team e vuoi aiutarci a migliorare la nostra immagine? Questo è il posto che fa per te!')?>
-=__('Cerchiamo qualcuno che possa svolgere le seguenti mansioni:')?>
-=__('Ti troverai a lavorare in sinergia con i creatori di contenuti digitali, che si occuperanno di produrre materiale grafico e video (o potrai occupartene tu stesso se ti va e ne sei capace).')?>
-=__('Ora parlaci di te.')?>
-=__('Descrivi qualsiasi tua esperienza nel gestire pagine o profili (e.g. personali, di attività commerciali, di meme nonsense, etc...) sui social network, in particolare Facebook e Instagram.')?>
-=__('Menziona anche i risultati raggiunti con tali attività promozionali, se possibile.')?>
-=__('Se dovessi spiegare in due righe cosa fa il team, cosa diresti?')?>
-=__('Indica anche quanto tempo potresti dedicare a queste attività e se hai qualche altro interesse.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('Sprigiona la tua vena creativa entrando nel nostro team! Abbiamo bisogno di figure che si occupino di realizzare:')?>
-=__('Se almeno una, o più di una, di queste attività di interessano, questo è il ruolo adatto.')?>
-=__('Parla di qualsiasi esperienza artistica, inclusi progetti personali (anche piccoli) o esami sostenuti.')?>
-=__('Se vuoi mostrarci alcuni dei tuoi lavori passati, abbozzi, concepts o hai idee su come migliorare il volto del team, non esitare!')?>
-=__('Menziona anche quanto tempo potresti dedicare alle attività in team e se fai altro di interessante nel tempo libero.')?>
-=__('Queste sono solo linee guida, scrivi tutto ciò che ti sembra rilevante dire.')?>
-=__('Stupiscici.')?>
-