161 lines
15 KiB
Plaintext
161 lines
15 KiB
Plaintext
|
{
|
|||
|
"cells": [
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"id": "9cab972c",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"# Wstęp do informatyki\n",
|
|||
|
"\n",
|
|||
|
"### Joanna Siwek\n",
|
|||
|
"\n",
|
|||
|
"## Laboratoria 1. informatyka – wprowadzenie i podstawowe pojęcia"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"id": "e3ef2128",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### Wykład w pigułce\n",
|
|||
|
"\n",
|
|||
|
"1. Definicja informatyki \n",
|
|||
|
"\n",
|
|||
|
"Informatyka, szeroko pojęta jako nauka, obejmuje różnorodne aspekty pracy z informacją, jej strukturą, reprezentacją i wykorzystaniem. Definicje informatyki wskazują na jej złożony charakter, który łączy teorię, analizę, projektowanie, implementację oraz zastosowanie zarówno oprogramowania, jak i sprzętu komputerowego. Dział informatyki zajmuje się również problemami etycznymi związanymi z technologią, z czego wynikają szczególne wymagania moralne stawiane przed profesjonalistami w tej dziedzinie.\n",
|
|||
|
"\n",
|
|||
|
"Rozważając różne definicje, informatyka jest przedstawiana zarówno jako nauka o obliczeniach, gdzie badania mogą dotyczyć algorytmów czy modeli obliczeniowych, jak i obszar badań nad skutecznym zastosowaniem komputerów do rozwiązywania realnych problemów. Równocześnie, w ramach etyki komputerowej, kluczowe stają się zagadnienia związane z odpowiedzialnością, prywatnością i wpływem informatyki na społeczeństwo, co pokazuje jej fundamentalne znaczenie nie tylko w kontekście technologicznym, ale również społecznym i moralnym.\n",
|
|||
|
"\n",
|
|||
|
"Informatyka obejmuje wiele różnych obszarów zainteresowania, które można podzielić na kilka głównych kategorii. Informatyka teoretyczna zajmuje się badaniem algorytmów, teorii obliczeń, teorii informacji i kodowania oraz informatyki kwantowej. Inżynieria komputerowa skupia się na logice obliczeniowej, architekturze komputerów, przetwarzaniu równoległym i rozproszonym, programowaniu niskopoziomowym oraz sieciach komputerowych i systemach operacyjnych. Informatyka praktyczna obejmuje grafikę komputerową, inżynierię oprogramowania, cyberbezpieczeństwo i kryptologię, a także bazy danych i eksplorację danych.\n",
|
|||
|
"\n",
|
|||
|
"Dalsze obszary to systemy i technologie komputerowe, które obejmują sztuczną inteligencję, systemy wbudowane, widzenie komputerowe, przetwarzanie obrazów i mowy, gry komputerowe, interfejsy człowiek-komputer oraz technologie webowe i mobilne. Informatyka stosowana rozciąga się na takie dziedziny jak bioinformatyka, chemioinformatyka, neuroinformatyka, socjoinformatyka, geoinformatyka oraz informatyka śledcza, medyczna, materiałowa, przemysłowa, ekonomiczna i afektywna. Te różnorodne obszary podkreślają, jak wszechstronna i integralna dla różnych dziedzin nauki i przemysłu jest informatyka.\n",
|
|||
|
"\n",
|
|||
|
"2. Historia informatyki\n",
|
|||
|
"\n",
|
|||
|
"Informatyka ma swoje korzenie sięgające starożytności, kiedy to około 2600 r. p.n.e. stosowano liczydła zwane abakusami. W IV wieku p.n.e. Euklides podał algorytm znajdowania największego wspólnego dzielnika, co jest uważane za pierwszy algorytm w historii. W IX wieku n.e. perski matematyk Muhammed Alchwarizmi opracował reguły arytmetyki dziesiętnej, dając początek pojęciu algorytmu. W XVII wieku rozwój mechanicznych maszyn obliczeniowych przyspieszył dzięki wynalazkom Wilhelma Schickarda, Blaise'a Pascala i Gottfrieda Wilhelma Leibnitza, którzy zbudowali jedne z pierwszych kalkulatorów mechanicznych i odkryli system dwójkowy. W XIX wieku Charles Babbage zbudował maszynę różnicową i stworzył plany maszyny analitycznej, a Ada Lovelace napisała pierwszy program komputerowy. Herman Hollerith wynalazł maszynę liczącą na kartach perforowanych, używaną w spisie powszechnym USA w 1890 roku.\n",
|
|||
|
"\n",
|
|||
|
"XX wiek przyniósł rewolucję w informatyce dzięki wynalazkom Alana Turinga, który opisał maszynę Turinga, oraz Johna von Neumanna, który stworzył architekturę współczesnego komputera. Powstały też pierwsze elektroniczne komputery, takie jak Atanasoff-Berry Computer i ENIAC. Kluczowe były wynalazki tranzystora w 1947 roku, który zastąpił lampy elektronowe w 1955 roku, oraz układu scalonego w 1958 roku. W Polsce zbudowano komputer XYZ, a IBM wprowadził serię 360. Lata 70. i 80. przyniosły rozwój mikrokomputerów, takich jak Altair 8800, Apple II i IBM PC. W XXI wieku rozwój komputerów kwantowych, sztucznej inteligencji i chmury obliczeniowej znacząco zmienił sposób przetwarzania danych, oferując nowe możliwości w różnych dziedzinach nauki i przemysłu, a także rewolucjonizując wiele aspektów codziennego życia.\n",
|
|||
|
"\n",
|
|||
|
"W XXI wieku rozwój technologii komputerowych osiągnął niespotykane wcześniej tempo. Pojawienie się komputerów kwantowych, które wykorzystują zasady mechaniki kwantowej do przetwarzania informacji, stanowi rewolucję w obliczeniach i może przynieść ogromne zmiany w różnych dziedzinach nauki i przemysłu. Rozwój sztucznej inteligencji (AI) i uczenia maszynowego (ML) zmienia sposób, w jaki komputery są wykorzystywane do rozwiązywania problemów, rewolucjonizując różne sektory, od medycyny i finansów po transport i rolnictwo. Powszechne wykorzystanie chmury obliczeniowej umożliwia elastyczne i skalowalne przechowywanie oraz przetwarzanie danych, co sprzyja innowacjom i obniża koszty operacyjne, umożliwiając firmom i użytkownikom indywidualnym korzystanie z potężnych zasobów obliczeniowych bez konieczności posiadania własnej infrastruktury IT.\n",
|
|||
|
"\n",
|
|||
|
"3. Etyka w informatyce\n",
|
|||
|
"\n",
|
|||
|
"Etyka, zgodnie z definicją encyklopedii PWN, oznacza traktat o obyczajach, a w szerszym rozumieniu to zespół norm moralnych przyjętych przez społeczeństwo do oceny i regulacji zachowań jego członków. W kontekście technologii komputerowych, Walter Maner w latach 70. wprowadził termin \"etyka komputerowa\", definiując ją jako badanie problemów etycznych zaostrzonych, przekształconych lub stworzonych przez technologię komputerową. Deborah Johnson i James Moor rozszerzyli te definicje, podkreślając, że etyka komputerowa analizuje wpływ technologii informatycznej na wartości społeczne i ludzkie, takie jak zdrowie, prywatność, demokracja, czy bezpieczeństwo, i zajmuje się problemami wynikającymi z braku istniejących zasad etycznych w kontekście użytkowania technologii informatycznej.\n",
|
|||
|
"\n",
|
|||
|
"Zasady etyczne w pracy informatyków, jak sugeruje Polskie Towarzystwo Informatyczne, obejmują m.in. przyczynianie się do dobra społeczeństwa, unikanie szkodzenia innym, bycie uczciwym i godnym zaufania oraz szanowanie praw własności intelektualnej. Informatycy powinni zawsze przedstawiać swoje kompetencje zgodnie z prawdą, respektować prywatność i poufność informacji, oraz unikać konfliktów interesów. Zaleca się również, aby informatycy starali się przedstawiać szerokie spektrum rozwiązań w swojej działalności dydaktycznej, oddzielali wiedzę pewną od hipotez w pracy naukowej i rzetelnie informowali klientów o kosztach i czasie trwania projektów.\n",
|
|||
|
"\n",
|
|||
|
"4. Narzędzia wsparcia pracy informatyka\n",
|
|||
|
"\n",
|
|||
|
"- **Wolfram Alpha**: Wykorzystuje inteligencję obliczeniową do formułowania odpowiedzi na pytania zadane w języku naturalnym, wykonywania obliczeń, przedstawiania danych statystycznych oraz rozwiązywania równań, stanowiąc alternatywę do Matlaba w wykonywaniu jednorazowych, trudnych obliczeń.\n",
|
|||
|
" \n",
|
|||
|
"- **draw.io**: Darmowe, webowe narzędzie do tworzenia diagramów, które umożliwia rysowanie schematów blokowych, diagramów przepływu, diagramów UML i innych. Jest łatwe w obsłudze, oferuje integrację z Google Drive, Dropbox, OneDrive i lokalnym systemem plików, a także umożliwia współpracę w czasie rzeczywistym.\n",
|
|||
|
"\n",
|
|||
|
"- **Amazon Web Services (AWS)**: Największy dostawca usług chmurowych na świecie oferujący szeroką gamę usług wspierających optymalizację procesów biznesowych, przechowywanie informacji, moc obliczeniową, dostęp do aplikacji i wiele innych, w tym EC2 do tworzenia maszyn wirtualnych, S3 do przechowywania plików oraz RDS do szybkiego tworzenia baz danych.\n",
|
|||
|
"\n",
|
|||
|
"- **Dropbox**: Usługa udostępniająca przestrzeń dyskową na serwerach firmy Dropbox, Inc., umożliwiająca wysyłanie, przeglądanie i pobieranie danych przez przeglądarkę internetową lub dedykowaną aplikację, używana głównie do przechowywania kopii zapasowych i synchronizowania plików między komputerami.\n",
|
|||
|
"\n",
|
|||
|
"- **OneDrive**: Wirtualny dysk Microsoftu udostępniający 5 GB darmowego miejsca z możliwością rozszerzenia do 100 GB, a posiadacze subskrypcji Microsoft 365 otrzymują dodatkowo 1 TB miejsca na swoje pliki, umożliwiając przechowywanie i synchronizację plików.\n",
|
|||
|
"\n",
|
|||
|
"- **MS Visio**: Program do łatwego i estetycznego rysowania schematów blokowych, bramek logicznych, diagramów sieci neuronowych, drzew i grafów, dostępny w pakiecie Office 365.\n",
|
|||
|
"\n",
|
|||
|
"- **Office 365**: Pakiet aplikacji biurowych i narzędzi do współpracy, w tym Word, Excel, PowerPoint, Teams, oraz SharePoint, umożliwiający wspólne opracowywanie dokumentów i zarządzanie projektami.\n",
|
|||
|
"\n",
|
|||
|
"- **Creately**: Chmurowe narzędzie SaaS do rysowania schematów, diagramów, zestawień, map myśli i innych, wspierające diagramy UML i schematy blokowe, oferujące darmowy, łatwy w obsłudze interfejs.\n",
|
|||
|
"\n",
|
|||
|
"- **Matlab Online**: Potężne narzędzie do uczenia maszynowego, algorytmów genetycznych, sieci neuronowych, optymalizacji i statystyki, dostępne w wersji studenckiej jako 30-dniowa darmowa wersja.\n",
|
|||
|
"\n",
|
|||
|
"- **Jupyter Notebook**: Darmowe środowisko webowe wspierające języki Julia, Python i R, do tworzenia interaktywnych notebooków zawierających wykonywalne fragmenty kodu, idealne do przygotowywania zajęć laboratoryjnych.\n",
|
|||
|
"\n",
|
|||
|
"- **Overleaf**: Chmurowy edytor LaTeX umożliwiający wersjonowanie i współdzielenie dokumentów, kompilujący na bieżąco, powstały z myślą o wspólnym tworzeniu artykułów naukowych.\n",
|
|||
|
"\n",
|
|||
|
"- **Jira**: Oprogramowanie firmy Atlassian do zarządzania projektami, śledzenia błędów, podziału zadań i współpracy, umożliwiające pracę w metodyce Scrum.\n",
|
|||
|
"\n",
|
|||
|
"- **GitHub**: Hostingowy serwis internetowy do projektów programistycznych wykorzystujących system kontroli wersji Git, udostępniający darmowy hosting programów open source i prywatnych repozytoriów.\n",
|
|||
|
"\n",
|
|||
|
"- **Środowiska programistyczne**: MS Visual Studio, Visual Studio Code, Python IDLE, NetBeans, Eclipse, PyCharm, Notepad++ – narzędzia do programowania wspierające różne języki i technologie.\n",
|
|||
|
"\n",
|
|||
|
"5. Główne trendy w informatyce w 2024 roku\n",
|
|||
|
"\n",
|
|||
|
"Współczesna informatyka rozwija się w wielu kierunkach, które znacząco wpływają na różne dziedziny życia. Big Data to jeden z kluczowych obszarów, gdzie przetwarzanie ogromnych i złożonych zbiorów danych pozwala na uzyskanie nowych wniosków w biznesie, zdrowiu, administracji i finansach. Generative AI, która potrafi tworzyć nowe treści takie jak teksty, obrazy czy wideo, również odgrywa znaczącą rolę, choć niesie ze sobą wyzwania związane z wiarygodnością i potencjalnymi zagrożeniami regulacyjnymi. Blockchain, jako zdecentralizowana baza danych, zapewnia bezpieczeństwo i niezmienność zapisów transakcji, co jest szczególnie ważne w systemach finansowych i logistyce. Quantum computing, choć jeszcze w początkowej fazie, obiecuje przełomowe zmiany w obliczeniach dzięki wykorzystaniu zjawisk kwantowych, co może zrewolucjonizować takie obszary jak kryptografia i modelowanie molekularne.\n",
|
|||
|
"\n",
|
|||
|
"Innym ważnym trendem jest bioinformatyka, łącząca biologię z informatyką, która umożliwia analizę i interpretację ogromnych zbiorów danych biologicznych, wspierając badania genetyczne i rozwój leków. Zdalna służba zdrowia, oparta na technologiach telekomunikacyjnych, pozwala na świadczenie usług medycznych na odległość, co jest szczególnie istotne w przypadku osób z ograniczoną mobilnością. Cyberbezpieczeństwo, jako ochrona przed zagrożeniami cyfrowymi, zyskuje na znaczeniu, a systemy autonomiczne i hybrydowe, które łączą autonomię z kontrolą ludzką, są coraz częściej stosowane w przemyśle i obronności. Digital Twins, czyli wirtualne kopie fizycznych obiektów, umożliwiają symulację i optymalizację procesów w czasie rzeczywistym, a zarządzanie dezinformacją staje się kluczowym wyzwaniem, w którym wykorzystuje się zaawansowane algorytmy do detekcji i kontroli treści, aby chronić społeczeństwo przed wpływem fake news."
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"id": "d512df99",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### Zadania do wykonania\n",
|
|||
|
"\n",
|
|||
|
"1.\t[Wolfram Alpha](https://www.wolframalpha.com/). Policz $\\int_{-\\infty}^{\\infty} e^{-t^2} e^{-i\\omega t} \\, dt$. Wyświetl wykres funkcji pod całką.\n",
|
|||
|
"\n",
|
|||
|
"2.\tPoszukaj jakie są na UAM ustalenia dotyczące etyki wykorzystania AI w toku studiów. Użyj [chatGPT](https://chatgpt.com) żeby podsumować je w 8 punktach.\n",
|
|||
|
"\n",
|
|||
|
"3. Znajdź trzy artykuły naukowe dowolnego z prowadzących zajęcia na Twoim kierunku, np. na [Google Scholar](https://scholar.google.com/). Zapisz cytowanie w konwencji APA.\n",
|
|||
|
"\n",
|
|||
|
"4.\tNarysuj schemat blokowy pokazujący sposób działania algorytmu liczącego silnię w [Creately](https://creately.com) lub [draw.io](https://www.drawio.com/).\n",
|
|||
|
"\n",
|
|||
|
"5.\tUtwórz pusty notebook w [Jupyter Lab](https://jupyter.wmi.amu.edu.pl). Wrzuć do środka kod w pythonie liczący silnie. Wykonaj go.\n",
|
|||
|
"\n",
|
|||
|
"6. (*) Znajdź obrazek pokazujący jakiś skomplikowany wzór matematyczny. Poproś chatGPT o jego przepisanie na latex lub markdown.\n"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"id": "d1681bd0",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### Przykłady\n",
|
|||
|
"\n",
|
|||
|
"![image](Obraz1.png)\n",
|
|||
|
"\n",
|
|||
|
"![image](Obraz2.png)\n",
|
|||
|
"\n",
|
|||
|
"![image](Obraz3.png)\n",
|
|||
|
"\n",
|
|||
|
"![image](Obraz5.png)\n",
|
|||
|
"\n",
|
|||
|
"![image](Obraz6.png)\n"
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"id": "89aafae7",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"### Zadanie domowe\n",
|
|||
|
"\n",
|
|||
|
"Załóż konto AWS (1 dolar na indentyfikację, zwracają po tygodniu). Uruchom i połącz się z maszyną wirtualną za pomocą aplikacji przeglądarkowej."
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"cell_type": "markdown",
|
|||
|
"id": "4702d5e7",
|
|||
|
"metadata": {},
|
|||
|
"source": [
|
|||
|
"#### Źródła\n",
|
|||
|
"\n",
|
|||
|
"1. https://github.com/\n",
|
|||
|
"2. https://www.wolframalpha.com/\n",
|
|||
|
"3. https://www.mathworks.com/products/matlab-online.html\n",
|
|||
|
"4. https://www.programiz.com/python-programming/online-compiler/\n",
|
|||
|
"5. https://www.dropbox.com/\n",
|
|||
|
"6. https://aws.amazon.com/\n",
|
|||
|
"7. https://jupyter.wmi.amu.edu.pl/hub/login\n",
|
|||
|
"8. https://www.overleaf.com/\n",
|
|||
|
"9. https://creately.com/\n",
|
|||
|
"10. https://1lib.pl/\n",
|
|||
|
"11. https://office.live.com/start/visio.aspx \n",
|
|||
|
"12. https://jira.wmi.amu.edu.pl/ "
|
|||
|
]
|
|||
|
}
|
|||
|
],
|
|||
|
"metadata": {
|
|||
|
"language_info": {
|
|||
|
"name": "python"
|
|||
|
}
|
|||
|
},
|
|||
|
"nbformat": 4,
|
|||
|
"nbformat_minor": 5
|
|||
|
}
|