Środowisko do "wspólnego" kodowania online

Odpowiedz Nowy wątek
2020-07-29 01:41

Rejestracja: 1 rok temu

Ostatnio: 12 godzin temu

2

Wygląda na to, że szykuje się kolejny semestr nauczania zdalnego - zaczynam więc poszukiwania jakiegoś dobrego narzędzia, które pomoże mi w nauczaniu podstaw programowania.

Środowisko musi wspierać C++, Java i Python byłyby miłymi dodatkami, obsługa Octave/Matlab to już byłaby pełnia szczęścia.

Zależy mi na

  • możliwości wspólnej edycji kodu "online"
  • możliwości pracy bez instalowania czegokolwiek poza przeglądarką
  • możliwości bezpośredniej kompilacji programu i uruchomienia go (bez przenoszenia do innego środowiska)

Na razie znalazłem (i potestowałem) https://repl.it/ - robi chyba więcej niż potrzebuję - jedyny potencjalny problem to przekonanie mojej "firmy" do zakupu licencji "classroom" ;)
Macie może doświadczenie z innymi podobnymi środowiskami ?

Wygląda na to, że szykuje się kolejny semestr nauczania zdalnego - zrodlo? - stivens 2020-07-29 12:14
Pismo wewnętrzne (wynikające z zaleceń zespołu ds. koordynacji działań w systemie szkolnictwa wyższego i nauki w związku z zagrożeniem wystąpienia COVID-19) - Bartłomiej Golenko 2020-07-29 12:43

Pozostało 580 znaków

2020-07-29 05:25

Rejestracja: 17 lat temu

Ostatnio: 47 sekund temu

3

Najlepiej wszystkich przekonać do Githuba.

edytowany 1x, ostatnio: Spine, 2020-07-29 05:25
Przecież to nie spełnia założeń. On szuka IDE online. - Saalin 2020-07-29 06:03
IDE online też nie spełnia założeń, bo nie naucza podstaw programowania... pomija pierwsze kroki. Niektóre pomoce naukowe szkodzą. A przy "wspólnym kodowaniu" kontrola wersji to podstawa. Prowadzący może napisać jakiś szablon, a inni sobie na zadanie zrobią forka i go uzupełnią :) - Spine 2020-07-29 06:14
@Spine: to zależy co jest celem. To jest jakiś pomysł, żeby uczyć programowania w oderwaniu od całego toolingu, który początkującym sprawia bardzo dużo problemów. To co proponujesz wymaga od początkującego dużego nakładu pracy zupełnie niezwiązanego z programowaniem. Instalowanie kompilatorów, IDE, kontroli wersji. A teraz pomyśl, że połowie Twoich uczniów to się nie uda bo coś spieprza po drodze i zanim napiszą Hello World spędzisz nad tym tydzień. - Saalin 2020-07-29 08:44

Pozostało 580 znaków

2020-07-29 08:44

Rejestracja: 1 rok temu

Ostatnio: 1 godzina temu

1

Tu masz jakąś szerszą listę https://www.makeuseof.com/tag/programmer-browser-ides/. Trzeba by doczytać jak to wygląda, ale może https://aws.amazon.com/cloud9/ udałoby się ograć na darmowym pakiecie z AWS (jak dobrze pamiętam to jest na rok). Albo może cos takiego https://docs.microsoft.com/pl-pl/visualstudio/liveshare/ - nie testowałem.

Pozostało 580 znaków

2020-07-29 09:06

Rejestracja: 2 lata temu

Ostatnio: 11 godzin temu

Lokalizacja: kosmos

1

VS Code
https://marketplace.visualstu[...]-vsliveshare.vsliveshare-pack

edytowany 1x, ostatnio: PinkLion, 2020-07-29 09:06
Na to muszę zerknąć, ale boję się problemów z konfiguracją... "Goły" VS Code do C++ się nie nadaje, a przy setkach studentów każda czynność wykonywana w ramach konfiguracji generuje dziesiątki "unikalnych" problemów ;) - Bartłomiej Golenko 2020-07-29 13:52

Pozostało 580 znaków

2020-07-29 12:33

Rejestracja: 3 lata temu

Ostatnio: 1 minuta temu

0

Jest jeszcze CodeAnywhere i Google Collab (to drugie nie wiem czy C++/jave wspiera ale na pewno ma jupytera)

Collab nie ma chyba xeus-a. Poza tym - c++ w jupyterze jest troszkę dziwny - wiele rzeczy za które jupytera uwielbiam przestaje działać albo działa wybiórczo z c++ ;) (np. nie można wielokrotnie uruchomić komórki zawierającej deklarację zmiennej bez restartu kernela). - Bartłomiej Golenko 2020-07-29 13:30
Mialem na mysli Pythona - stivens 2020-07-29 13:32
Tak jak napisałem - Python to miły dodatek - C++ jest "must have" - Bartłomiej Golenko 2020-07-29 13:33
A repl.it to dziala w ogole w trybie livecoding? Widzialem tylko udostepnianie kodu po linku - stivens 2020-07-29 13:36
Tak (jak się zalogujesz). - Bartłomiej Golenko 2020-07-29 13:40

Pozostało 580 znaków

2020-07-29 13:22

Rejestracja: 1 rok temu

Ostatnio: 12 godzin temu

0

@Spine
Kurs z podstaw programowania to za wcześnie na git-a (będą go u mnie mieli semestr później na projekcie z programowania obiektowego).
To też nie jest czas żeby wymagać opanowania narzędzi na najniższym możliwym poziomie.

Git - przy wszystkich swoich zaletach - nie jest dobrym narzędziem do kolaboracji z 16 osobami, pracującymi nad programami typu "hello world". Jest zbyt wiele rzeczy które można w nim zrobić źle, a 6 minut tygodniowo na osobę (tyle czasu mam "średnio" na studenta) to za mało czasu żeby rozwiązywać wszystkie problemy z nim związane (a uwierz mi, cuda jakie studenci potrafią zrobić z git-em przekraczają wszelkie wyobrażenia....).

To co jest mi potrzebne, to możliwość szybkiego "zerknięcia" studentowi na ekran i np. zwrócenia mu uwagi, że wyrażenia w pętli for rozdziela się średnikiem a nie przecinkiem ;) albo że wstawił sobie średnik po if-ie i dlatego kolejne instrukcje wykonują się zawsze a nie tylko wtedy gdy warunek jest prawdziwy. To są drobiazgi, ale na takich rzeczach początkujący potrafi się na długo "zawiesić".
Teoretycznie mogę czekać aż się zgłosi i wyśle mi swój kod, ale to jest strasznie "nieefektywne". Nie dość że zajmuje to dużo czasu, to na dodatek wielu studentów boi się powiedzieć że ma z czymś problem i prędzej skopiują działający kod od kolegi niż zapytają co jest źle u nich.

Wymóg "działania w chmurze" wynika z kolei z tego, że na początku wielu studentów ma problem z konfiguracją najprostszych rzeczy. Przy zajęciach stacjonarnych nie było większego problemu (każdy dostawał komputer z już skonfigurowanym  środowiskiem pracy). Jeśli ktoś chciał pracować na swoim komputerze to sam musiał sobie wszystko poustawiać i to był jego problem (i tak, tu też potrafiłą dziać się cuda - bo np. ktoś postanowił zrobić konfigurację na podstawie tutoriala z 1998 roku ;) ).

Pozostało 580 znaków

2020-07-29 13:29

Rejestracja: 1 rok temu

Ostatnio: 1 godzina temu

2

No to nie lepsze byłoby coś w rodzaju Teamsa, żeby mogli ci udostępnić swój ekran?

16 jednocześnie ? - Bartłomiej Golenko 2020-07-29 13:31
Nie, ci co będą mili problemy. Bo jak będziesz miał współdzielone jakieś edytory to i tak będziesz musiał w 16 naraz patrzeć. - Tomek Pycia 2020-07-29 13:35
Mogę mieć 16 zakładek z edytorami - z tym sobie każdy komputer poradzi. Mogę się przez nie przeklikać w 30 sekund tak jak mogłem sobie spacerować po sali i zerkać studentom na ekran. Typowe błędy zauważę w 1-2 sekundy. - Bartłomiej Golenko 2020-07-29 13:44

Pozostało 580 znaków

2020-07-29 13:31

Rejestracja: 8 lat temu

Ostatnio: 1 godzina temu

0

Powstało sporo tooli w oparciu o vs np https://codesandbox.io/

edytowany 1x, ostatnio: Schadoow, 2020-07-29 13:33
To nie jest tylko do js-a ? Nie widzę tam C++ - Bartłomiej Golenko 2020-07-29 13:54
Hmm, masz racje pospieszyłem się xD. Tego kiedys uzywałem ale w kontekście angular. - Schadoow 2020-07-29 13:56

Pozostało 580 znaków

2020-07-29 19:02

Rejestracja: 17 lat temu

Ostatnio: 47 sekund temu

2
Bartłomiej Golenko napisał(a):

Wymóg "działania w chmurze" wynika z kolei z tego, że na początku wielu studentów ma problem z konfiguracją najprostszych rzeczy. Przy zajęciach stacjonarnych nie było większego problemu (każdy dostawał komputer z już skonfigurowanym  środowiskiem pracy). Jeśli ktoś chciał pracować na swoim komputerze to sam musiał sobie wszystko poustawiać i to był jego problem (i tak, tu też potrafiłą dziać się cuda - bo np. ktoś postanowił zrobić konfigurację na podstawie tutoriala z 1998 roku ;) ).

U mnie na studiach były instrukcje do laboratorium. Mniej lub bardziej szczegółowe...

Jeśli student nie potrafi wykonywać poleceń z instrukcji, to niech się nie okłamuje, że uczestnictwo w kursie coś mu da...

Może nie trzeba dokładać Githuba do kursu, ale instalacja IDE i konfiguracja projektu by nie zaszkodziła :]

edytowany 1x, ostatnio: Spine, 2020-07-29 19:04
Te instrukcje do laboratoriów pisane są przez Doktorów Informatyków, którzy świetnie się znają na programowaniu, ale nie potrafią się precyzyjnie po polsku wysłowić, bo nie są humanistami i nie muszą świetnie pisać. U nas prowadzących laborki było kilku, a jeden przygotował te opisy dla wszystkich grup. Tak je przygotował, że nie tylko studenci, ale i pozostali prowadzący nie bardzo wiedzieli, co autor miał na myśli. Tak więc jeśli ktoś miałby bazować tylko na tych opisach, to do d**y takie studiowanie. - PaulGilbert 2020-07-31 14:31

Pozostało 580 znaków

2020-07-29 21:01

Rejestracja: 1 rok temu

Ostatnio: 12 godzin temu

0
PinkLion napisał(a):

VS Code
https://marketplace.visualstu[...]-vsliveshare.vsliveshare-pack

Przetestowałem - od strony wspólnego programowania działa to naprawdę fajnie.
Wydaje mi się jednak, że to narzędzie bardziej dla ludzi którzy sobie nawzajem bardzo ufają...
Ja do moich studentów aż takiego zaufania nie mam ;)

Pozostało 580 znaków

2020-07-29 21:10

Rejestracja: 2 lata temu

Ostatnio: 3 minuty temu

1

a potrzebujesz środowisko graficzne? może konta na linuxie i nano do edycji (wiem, jestem dzisiaj wredna )

Dlaczego nano? Niech się od razu vim-a uczą... ;) A grupy z cyberbezpieczeństwa koniecznie Emacsa jako wstęp do hackowania ;P - Bartłomiej Golenko 2020-07-29 21:12
bo nano jeszcze jakoś ogarniam a vima nie ;) - Miang 2020-07-29 21:13
Poważniej mówiąc - można, ale w porównaniu do "współczesnych" IDE to troszkę przykre doświadczenie... Moim celem jest pokazanie początkującym, że programowanie może być fajne i łatwe a nie skuteczne zniechęcenie do czegokolwiek związanego z kodowaniem ;) - Bartłomiej Golenko 2020-07-29 21:17
SSH nie wymaga terminala. Mozna spokojnie majac "normalne" IDE podpinac sie po SSH i kodowac zdalnie - stivens 2020-07-29 22:20

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0