Поправка по Web-дизайн

Поправката по Web-дизайн ще се проведе на 17.07.2018 от 13:00 часа.
Форматът на изпитването ще бъде тест с отворени и затворени въпроси върху материал, преподаван през годината, както и през допълнително проведените консултации във връзка с поправката.
Общият брой точки, които биха могли да бъдат получени от изпита, е 40. Скалата е както следва:

Точки 0-9 10-35 36-38 39 40
Оценка 2 3 4 5 6

При възникнали въпроси, пишете ми на мейла :)

Публикувано в Web Design | Етикети: , , , , , , | Коментарите са изключени за Поправка по Web-дизайн

Проекти за поправка по технология на програмирането

Сега след като практиките вече са приключили имам възможност да дам проектите за реализация за поправката.

Целта е да се разработи малък проект по който да се работи всеки ден по около 5 часа на ден. Общата стойност на проекта е около 25 часа.

Общи изисквания

1. Проектът да се държи от ден 1 в хранилище и да се вижда неговото развитие. Последният къмит трябва да е не по-късно от денят на поправката.
2. Накрая да се разработи 60-90 секундно видео по проекта което да го представя към клиента
3. Да се разработи wiki страничка по проекта, която в рамките на 500 до 1000 думи да описва неговото поведение.
4. Технологията за реализация на пректа се избира от ученика. Може да се избере всякаква, стига да може да се демонстрира в 31-кабинет от ученика. Може да се реализира на лаптоп, или на компютър вкъщи но компютърът от вкъщи трябва да може да се донесе в кабинета.
5. Операционна система, библиотеки, тулове за реализация се избира от ученика.
6. За реализацията аз лично препоръчвам Ruby on Rails тъй като това е технологията, която сме разглеждали в часовете.

Специфични изисквания

Да се реализира web платформа за продажба на документи. Част от докумените са налични публични и всеки един потребител може да има достъп до тях, част от документите изискват потребителят да е заплатил за достъпа си.

Платформата да поддържа

Следните функционалности за средна оценка 3

  1. Регистрация на потребител – потребител се регистрира с потребител и парола, получава писмо за регистрацията си и потвърждава регистрацитята си като избира и последва връзка в писмото. Така се удостоверява, че мейлът е негов.
  2. На началната страница се показват последните три качени документа в платформата както и дали те изискват абонамент или не, тяхното име и тяхното кратко описание
  3. Потребителят може да отиде на адрес /documents и да види всички документи в платформата, като те са разделени на страници от по 10. Поддържа се pagination
  4. Администраторите в платформата имат право да отидат на /documents/new където се показва форма за създаване на нов документ. Посочват се име на документ, картинка, кратко описание, самият документ се качва, както и дали документът изисква плащане или не. Избира се бутон Create и документът се създава в платформата и обикновенните потребители вече могат да го достъпват
  5. Всеки отделен документ може да се достъпи на url-то /documents/:id където id е идентификаторът на документа в базата.
  6. Когато потребител достъпи адрес на документ в браузъра той може да има достъп до него или да няма достъп. Ако има достъп му се показват картинката на документа, името, описанието и връзка за свалянето на документа. Ако няма достъп му се показват картинката, името, описанието и съобщение, че той няма достъп и затова трябва да се абонира.
  7. Потребител може да отиде на страницата /subscriptions където е показана информация за плана и да закупи нов абонамент за този план. Закупуването на абонамент се прави като потребителят отговори на въпроса колко е „2+2“. Ако потребителят правилно е отговорил на този въпрос се счита, че си е закупил абонамент. Целта е да няма връзка към външни услуги за плащания. Ние да си управляваме плащанията по възможно на-простия начин.
  8. Един потребител може да закупи даден план само веднъж. Ако вече го е закупил трябва да му се покаже информация кога го е закупил.
  9. Ако потребител има редовно закупен план трябва да може да достъпва всички документи, които изискват закупен план.
  10. Приложението да се качи на сървъв и да е достъпно през интернет. Примерно Amazon, Heroku, Azure

Следните допълнителни функционалности за оценка 4

  1. Да се създадът 3 плана и човек да може да се абонира за повече от един план.  Първият план да дава възможност на потребител да достъпва документите в рамките на следващите 1 минута. Вторият в рамките на следващите 2 минути. Третият в рамките на следващите 3 минути. План 1 се закупува с отговор на въпроса колко е 1+1, план 2 се закупува с отговор на въпроса колко е 2+2 и план 3 се закупува с отговор на въпроса колко е 3+3
  2. За всеки един документ да се знае кои са авторите. Един документ може да има много автори. В страницата за документа се показват имената на авторите на документа и html връзка, която да води към адрес /authors/:id където id е идентификатора на автора
  3. Като се посети адрес /authors/1 може да се видят всички документи публикувани от автор 1.

Следните допълнителни функционалности за оценка 5

  1. За всеки един документа да може да се посочи до кой точно абонамент трябва да се е абонирал човека, за да може той да има достъп до него.

Следните допълнителни функционалности за оценка 6

  1. Да се добавят категории достъпни на /categories. Всеки документ може да бъде в една или повече категории. Като се посети адресът /categories/1 да се покажат всички документи в тази категория.
  2. Да се добави валидация, че един автор не може да има повече от 70% от документите си като платени.
  3. Да се праща съобщение на авторите кои са документите които днес са били свалени от потребителите и колко пъти е бил свален всеки документ
Публикувано в Технология на програмирането | Коментирайте

Предаване на проекти по технология на програмирането

Форма за предаване на проектите

https://goo.gl/forms/hMSbjHKp8IxCAWUu1

Публикувано в Технология на програмирането | Коментарите са изключени за Предаване на проекти по технология на програмирането

Второ домашно разработка на игри в партньорство с Ubisoft

В посочения линк са ресурсите за второто домашно, заданието и презентациите от днес –

goo.gl/kWk8YH

Домашното трябва да се предаде в хранилището в директория gamedev/class2/

Публикувано в Технология на програмирането | Коментарите са изключени за Второ домашно разработка на игри в партньорство с Ubisoft

Софтуерно обучение в ТУЕС – презентация на ТУЕС Фест 2018

Публикувано в Разни | Коментарите са изключени за Софтуерно обучение в ТУЕС – презентация на ТУЕС Фест 2018

Първо домашно Разработка на игри в партньорство с Ubisoft

Домашна работа лекция 1

Добавете няколко астероида към сцената (asset-те са включени в предоставения пакет)
Астероидите трябва да се движат в произволно избрана посока в права линия.
Когато излязат извън игралното полето трябва да се телепортират в произволна точка.

N.B.
Не се притеснявайте за колизиите на различните обекти, това ще го покрием в следващия час.

Пакетът е https://drive.google.com/file/d/1h1CAvqk7P0vCF1cNZbFcjLmafUMRGJl-/view?usp=sharing

Публикувано в Разни, Технология на програмирането | Коментарите са изключени за Първо домашно Разработка на игри в партньорство с Ubisoft

Резултати от задачите за подготовка за Hack TUES

Създадени са 57 форка на оригиналното репо показани по-долу

Хората които са се справили

9a_02_Alex_Stefanov, 1
9_1_Alex_Uzunov,1
9v_3_Angel_Penchev, 1
8b_2_Angel_Stoyanov,1
9v_7_Boqn_Ivanov,1
9.v_N5_Bogdan_Mironov,1
8A_19_Kristiyan_Stoimenov,1
10a_26_Chudomir_Chenkov,1
9G_12_Daniel_Dimitrov,1
10_Gabriela_Yontcheva-,1
10a_6_Georgi_Demirev,1
9v_10_Georgi_Popov,1
10V_13_George_Stefanov,1
8b_8_Gergana_Roeva,1
10a_13_Ilia_Parvanov,1
10v_19_Iliyan_Antov,1
9b_15_ivan_dimitrov,1
8g_8_Jasmina_Ivanova,1
9v_15_Jordan_Zlatanov,1
9b_17_Kaloyan_Angelov,1
8g_14_Kaloyan_Pashov,1
10V_5_Antoan_Yanev,1
9b_20_Kristyan_Yochev,1
10a_23_Stefan_Galabov,1
9a_19_martin_simov,1
9v_19_Metodi_Pandurov,1
9a_17_Mariq-Yoanna_Aleksandrova,1
11A_19_Momchil_Todorov,1
10B_23_Petar_Nikolov,1
9a_22_Petar-Gabriel_Matev,1
9A_23_Samuil_Georgiev,1
10V_26_Samuil_Ivanov,1
9b_2_Alexander_Stoichkov,1
10a_22_Simeon_Georgiev,1
9a_26_Simeon_Tsekov,1
9V_23_Simeon_Georgiev,1
8g_24_Slavqnka_Yovcheva,1
11a_24_Stefan_Angelov,1
9g_25_Stefan_Antonov,1
8a_24_Stella_Kasabova,1
10b_26_Teodora_Yovcheva,1
8g_28_Teodora_Stoitchkova,1
IX-G_10_Vilian_Sivov,1
8b_22_martin_vayer,1
9g_8_Venelin_Atanasov,1
8a_8_violeta_kabadzhova,1
10V_11_Vladislav_Milenkov,1
9v_25_Yana_Doncheva,1
9v_25_Yana_Doncheva,1
10V_14_Georgi_Tsvetanov,1
8g_9_Zahary_Momchilov-,1

Хората, които не са се справили

Mihail Gerginov
Tsvetelina10
Boyko03,0
kirilig09, 0
StefanAutardiq,0

Хората, които животът изглежда е форма на наказание

testTestov98/HackTUES_class_number_firstname_lastname – -1

Разклонения

Публикувано в Разни | Коментарите са изключени за Резултати от задачите за подготовка за Hack TUES

Задачи за подготовка за участие в Hack TUES 30

С цел по-ползотворна работа по време на хакатона, всички участници трябва да са
запознати с това, как се работи с хранилище за управление на код. Хранилището, което ще използваме за запознаване и което ще се ползва официално по време на хакатона е github.com.

Запознаването се състои от кратка теория и няколко задачи, които трябва да се реализират от всички самостоятелно, вкъщи. Задачите ще бъдат проверени и резултатът от проверката ще бъде обявен публично. След решението на задачите ще се прецени дали да се направи среща с участниците и кратка лекция с цел отговор на въпроси ако такива съществуват.

Теория

Git е наименование на софтуер за хранилище за управление на код. Github е WEB услага, която предоставя Git хранилища и още много други неща.

Запознайте се със следните материали – отнема около час два.

https://guides.github.com/activities/hello-world/

https://product.hubspot.com/blog/git-and-github-tutorial-for-beginners

https://try.github.io/levels/1/challenges/1

https://codeburst.io/git-good-part-a-e0d826286a2a

Задачи

Ако си нямате и представа за какво става въпрос в задачатие и какво трябва да направите, върнете се и четете още от теорията.

Чуждиците се използват нарочно. Такъв е жаргонът.

  1. Създайте ново хранилище в github с име HackTUES_class_number_firstname_lastname  където class е  класът в който сте. number е номерът в клас. firstname е първото ви име. lastname е фамилията ви
  2. В това хранилище направете файл README.md
  3. Във файла README.md напишете лириката на любима песен, смисъла на живота, или просто затоверете очи и посвирете симвония от Бетовен върху клавиатурата.
  4. Къмитнете промяната.
  5. Разархивирайте ето този файл – RESTful-API-RSA-Cryptosystem Къмитнете в един къмит цялото съдържание на този файл. Не качвайте файла като zip. Трябва да го разархивирате и да качите всичките директории и файлове в него с един къмит – подсказка, не го правете през Upload бутона на сайта. Той е за леймъри. Ще ви направи 100 къмите и ще трябва да направите 100-200 цъквания.
  6. Към README.md файла като следващ къмит трябва да имате текста DONE най- отгове на файла, самостоятелно като ред. Тази точка и точка 3 трябва да са в отделни къмити.
  7. Форкнете репозиторито https://github.com/thebravoman/hacktues_preparation във вашия потребител.
  8. Във файла repos.txt на вашето хранилище, това което сте форкнали преди малко, в неговия файл repos.txt напишете линка към хранилището създадено в стъпка 1.
  9. Чакайте писмото си от Hogwarts. Принципно пращам по един бухъл, но може да получите и мейл, или пък резултатите да са публични тук.
  10. Има краен срок. 5-ти март. Което означава, че аз ще ги гледам веднъж и ще проверявам само веднъж, което ще се случи на 6-ти или 7-ми март. След това няма да проверявам.
Публикувано в Разни | Коментарите са изключени за Задачи за подготовка за участие в Hack TUES 30

Курс „Въведение в скриптовите езици за програмиране“ за 8 и 9 клас

Заявлението за записване в свободно избираемият предмет „Въведение в скриптовите езици за програмиране“ е тук

Заявленията се събират от отговорниците на класовете и трябва да бъдат предадени в каб. 24 до 4.10.2017 (сряда).

Учебните занятия започват в седмицата от 9.10.2017 съгласно учебната програма.

Публикувано в Разни | Коментарите са изключени за Курс „Въведение в скриптовите езици за програмиране“ за 8 и 9 клас

Задачи поправителна сесия Септември 2017 при Кирил Митов

Задачите са следните и трябва да се решат всичките:

Да се създаде ново хранилище за поправката в гитхъб, носещо името на ученика, класа, номера в клас

Всички задачи да се качът в хранилището.

Проектна задача

  1. Да се реализира проект с технология по избор, който да позволява следните функционалност.
  2. Да се качи на heroku. Приложението е разделено на три етапа на разработка. Да може да отговаря на следните заявки:
  3. Could create articles with post and get the article with getVideosPOST /videos

    Request Body:

    {

    name: „title“

    }
    Response:

    {

    name: „the name of the video“,

    id: „the id of the video“,

    created_at: „time it is created“,

    update_at: „last time it was changed“

    }
    GET /videos/:id

    response:

    {

    name: „the name of the video“

    id: „the id of the article“,

    created_at: „time it is created“,

    update_at: „last time it was changed“

    }
    GET /videos

    Reponse:

    {

    # array of all the videos sorted by „title“

    }

    Level 2

    Can create comments for these videos
    Comments
    POST /comments

    Request Body:

    {

    video_id: „the id of the video for which this comment is“,

    content: „the content of the comment“

    }
    Response

    {

    id: „comment id“,

    video_id: „identifier“,

    content: „content“

    }
    GET /comments/:id

    Response:

    {

    id: „comment id“

    video_id: „identifier“,

    content: „content“

    }
    GET /comments

    response:

    {

    [comments,] # array of all the comments sorted by content

    }
    GET /videos/:id/comments

    response:

    {

    [comments,] # array of all the comments for this videos sorted by content

    }

    Level 3

    Can vote for videos
    POST /votes

    Request Body:

    {

    article_id: „identifier“,

    value: „vote_value“

    }
    Response:

    {

    video_id: „identifier“,

    value: „vote_value“

    id: „the id of the vote“

    }
    GET /votes

    {

    [votes,] # array of all the votes sorted by created_at

    }
    GET /videos/:id?order=normdist

    Reponse:

    {

    id: „id“,

    name: „name“

    comments_score: „the score for comments“

    votes_score: „the score for votes“

    }
    GET /videos?order=normdist

    Response:

    {

    # videos sorted in normal distribution based on number of comments and vote scoring. Norm dist score of comments plus normdist of score

    }

  4. Да се направи описание на проекта в Markdown формат във файла plan.md
  5. Да се направи wiki страничка, публично достъпна. Да се направи описание от по 1000 символа на проекта.

Задача 1

Дадено е CSV от вида:

 

Потребител Номер, Видео Номер, Процент гледане

1,2,0.8

2,3,0.4

Да се открие кое видео процентно е гледано най-много.

 

Задача 2

Да се напише програма, която сравнява дали два JSON  файла са схематично и стойностно еднакви. Файловете са еднакви ако имат еднакви ключове и еднакви стойности за тези ключове.

Програмата трябва да се изпълнява като

ruby my_program.rb file1.json file2.json

Файловете, които се сравняват се подават от командния ред.

Като резултат на командния ред се изписва

0 – двата файла са различни

1 – двата файла са схемантично и по стойности еднакви

Пример за еднакви файла

{

F: “aa”,

L: “bb”

}

e еднакъв с:

{

L: “bb”,

F: “aa”

}

Задача 3

Да се напише програма, която решава квадратно уравнение, чийто аргументи, a, b, c, са записани във файл с име input.json. Примерно съдъражени на такъв файл е:

{

„a“:10,

„b“:-3,

„c“:4

}

Решението да се изведе на console-ата, отново в json format във вида:

 

{

„x1“:10,

„x2“:-3,

„D“:4

}

Като ключовете: x1 и x2 са реалните корени пресметнати от програмата ви, а D е дискриминантата.

Задача 4

Да се реализира приложение на Node.js. Приложението да се качи на heroku. Да може да приема post заявка за адрес /sum с параметри a и b и да връща резултатът от тази сумата на тези две числа

Задача 5

Да се реализира приложение на Node.js. Приложението да се качи на heroku. Да може да приема post заявка за адрес /count с параметър CSV файл и да дава резултат броя на редовете в този CSV файл.

Публикувано в Разни | Коментарите са изключени за Задачи поправителна сесия Септември 2017 при Кирил Митов