>> Добре.
Ласкаво просимо в галузі комп'ютерних наук 164.
Тому, перш ніж ми заглибимося в з оглядом
про те, що курс буде про це семестрі і трохи
матеріалу в цей перший день, Я думав, що дасть вам відчуття
про те, як ми провели минулу ніч.
Це не так багато, як на стороні сервера проблемою ми зіткнулися
але на стороні клієнта один.
Так би кожен з вас виявили саме цей сайт тільки поки
або полотно, який деякі Гарвардського курси в даний час рухається до?
Так iSites збирається померти повільно смерть, якщо ви отримали додається
до нього, це, ймовірно, замінити Canvas.
І так, ми думали стрибати на борту і бути частиною
цієї бета-тестування з використанням Canvas який є інструментом з відкритим вихідним кодом.
Це спонсорується Компанія під назвою Instructure.
Таким чином, є корпоративний резервне за ним.
Але здебільшого ми використовуємо його на цьому шляху.
Але вчора ввечері, коли ми намагалися
отримати на веб-сайті курси завершена, ми зіткнулися з великою
розчарувань, тому що це є навчання Система управління
що означає, що це частина програмного забезпечення
за допомогою якого можна управляти контентом
за допомогою веб-інтерфейсу.
Ви не повинні використовувати таємні файли конфігурації.
Ви не повинні знати, нічого про бази даних,
це значною мірою точки і натисніть таким чином, сайти Google
або щось в цьому роді може бути.
Але в результаті це було страшенно важко зробити щось просте, як -
давайте перейти на сайт курсів.
Тепер просто помістіть опції меню в цьому лівій стороні.
Справа в точку, немає нічого там насправді прямо зараз
тому що спосіб програмне забезпечення призначений у тому, що, якщо ви хочете
встановити речі в Ваше меню ліва,
у вас є насправді встановити ці модулі
або програми в програмному забезпеченні.
І ми не хочемо, щоб це зробити.
Ми просто хотіли посилання подобатися навчальний план.
Ми хотіли посилання на співробітників.
Ми хотіли посилання на відео тощо.
Так що якщо ви зіткнулися з веб-сайтів,
це від сторонніх веб-сайті
але ви не маєте ніякого контролю на вихідному коді.
У вас немає доступу до сервер, ви не можете SSH,
Ви можете SFTP, все, що можна використовувати є місцевим веб-інтерфейс
і ви хочете, щоб почати зміни
або зміни користувачеві інтерфейс за допомогою інших засобів.
Що може ваш перший інстинкт бути?
Які питання ви можете запитати з Instructure в цьому випадку
компанія, так що Ви можете почасти працювати
навколо цих обмежень як ми робили?
Ми хочемо додати пункти меню
але ми не можемо змінити їх серверний код.
Так що рішення може що натякнути, що?
Так.
[Нерозбірливість Зауваження]
ОК.
[Нерозбірливість Зауваження]
Так. Таким чином, ми могли розглянути щось
як розширення Chrome.
Якщо не знайомі, Chrome розширення суті шматок
програмного забезпечення від Chrome браузеру правило, написані
в JavaScript.
І це всього лише спосіб ін'єкційних Код зазвичай JavaScript, може бути,
деякі CSS в Мережі сторінки, які ви відвідуєте.
Причому розширення Chrome є просто постійно відстежуємо те, що
сайти ви відвідуєте і намагаючись виявити.
О, якщо ви facebook.com зробити це.
О, якщо ви перебуваєте в isites.harvard.edu це зробити.
Так що ті з вас, хто міг би використовували 2x вилку CS50 в
в тому, що дозволяє прискорити до відео є саме це.
Так от цікаво, і це вид на правильному шляху.
Тому що, якщо у вас немає доступу на сервер, ви просто хочете
щоб якось змінити DOM дерево, яке користувач бачить,
Ви можете в значній мірі тільки зробити це на стороні клієнта.
Тепер, звичайно, очевидний улов
використання Chrome розширення і що?
Вірно. Так що не всі використовують Хром і якщо відчуває почасти кульгавим
якщо ви як би є доручити, що всі
з ваших користувачів може тільки використовувати веб-сайт
щоб побачити опції меню якщо у них є Chrome.
Так що ще могли б ми могли б ми хочемо запитати Instructure?
>> Так одне я думаю, ймовірно, можна додати текст
на веб-сайті, чи не так?
>> ОК.
>> Дізнайтеся, якщо ви можете фактично поклав HTML в тексті.
>> ОК. Добре.
Таким чином, ми могли б запитати їх, якщо ми могли б покласти HTML в самому тексті.
Таким чином, замість залишати текстові Оголошення, ми можемо додавати посилання?
Чи можемо ми додати нові зображення?
Чи можемо ми додати маркери?
Все, що ми могли б хочу зробити естетично.
І Коротка відповідь: так.
Існує дійсно роду WYSIWG,
Ви бачите те, що ви Отримати редактора, який поставляється
з цим зокрема частина програмного забезпечення
що дозволяє редагувати.
Такі речі, як на головну сторінку з моїм ім'ям і Роба
і Тім і так далі.
І що отримали розлучить нас від туди.
На жаль, це не давайте покласти що-небудь тут
наприклад.
Це не дозволяє нам покласти все, що тут, тому що ми обмежені
тим, що оригінал автори хотіли, щоб ми зробили.
Так що ми на один крок ближче.
Що ще ми могли б звернутися до компанії?
Які другий обхідні прийоми можливо?
Це повинен бути залагодити.
Що ще ви можете зробити?
Таким чином, ви були на праві відслідковувати з цим поняттям
на стороні клієнта JavaScript уприскування.
Як ще ми могли б отримати JavaScript в місці, можливо, чи не так?
Тому як тільки ви наявність,
ви можете дуже багато зробити що-небудь навіть якщо ваш випробували
з JavaScript обмежується 50 або який-небудь інший попередній досвід,
Ви знаєте, що ви може переміщатися по дереву
що це веб-сторінка, DOM.
Ви, напевно, пам'ятаєте, що вам можна додати вузли або видаляти вузли.
Ви можете додати речі у веб-сторінку.
Насправді це саме те, в 2x CS50 підключити робить.
Це вириває з iSites ' відео плеєр і ставить
в іншому все разом.
Так що, якщо компанія Instructure дозволило вам
впорснути Javascript на свій сайт курсу?
Іншими словами, те, що, якщо вони дозволив Вам через їх GUI,
їх WYSIWG інтерфейс вставте URL файлу JS
і може бути, навіть. файл CSS а потім вони дбали
процесу, вставивши його на самому верху кожної сторінки.
Так звичайно ж, це було Тільки так ми змогли
для досягнення цієї мети.
Якби я подивитися вихідний код сторінки тут - і дозвольте мені збільшувати і пошук
для cs164.net який є домену ми звичайно власником.
Зверніть увагу, що за допомогою деяких серій кроки, потрібен час, щоб зрозуміти
з їх документації.
Ми ми можемо сказати, на вершині кожен веб-сторінки, що полотно виходи
для цього курсу, вихід. CSS файл.
І якщо ми робимо ще одну команду е і пошук трохи далі,
ви побачите, що тут,
вкладеними з якимось JavaScript Код є також згадати
цього URL тут.
Отже, іншими словами, ми роду обдурили їх
в ін'єкційних незалежно CSS,
все JavaScript ми хочу на сайт.
Так що напрошується питання, для чого це потрібно?
Ну, давайте йти вперед і просто захопити цей джерело,
вставте цей тут.
Це заборонено, тому що для імітації цього,
Я права зміненими [фонетичний] все.
Отже, дозвольте мені дати, що ще.
Доступ на читання і тепер перезавантажити.
Отже, що ж нам робити?
Таким чином, ви будете краще на це особливо середнього семестр
коли ми проводимо багато наш час на JavaScript.
Але те, що робить це здається, роблять?
Так що на самому верху цього JS файл, який знову входить
в кожній веб-сторінки, що Звичайно, зараз працює на веб-сайті.
Ми перевірили, щоб побачити, якщо тип з JQuery не визначено.
Таким чином, в термін непрофесіонала що це означає?
Що б це значило, якщо JQuery не визначено?
Ну, у вас є Завантажувалася JavaScript.
Ви не повинні JQuery завантажений.
Так що ми просто сподівалися що Instructure,
компанія фактично є за допомогою JQuery самі.
В іншому випадку, ми повинні були б вставте бібліотеку JQuery на вершині
цього файлу таким чином, щоб мати доступ до нього.
І це не тому, що я просто хочуть мати доступ до речей
як долар нотації знак та інші функціонально
, Який поставляється з JQuery.
Якщо ви пам'ятаєте це бібліотека і якщо незнайомі
або якщо це було деякий час, відпочинок впевнені, ми прийдемо до цього
с протягом декількох тижнів.
Так що ті речі, ми робимо тут?
Так що для тих, що могли б згадати, що ж це синтаксис тут на увазі?
Коли ви просто передати анонімний функція або функція лямбда?
У CS51 говорити Функція JQuery, як це.
Коли цей код збирається отримати виконаний?
Так.
[Нерозбірливість Зауваження]
Саме так. Так цей код за своєю природою
виклику функції цього за замовчуванням тільки збирається отримати виконаний
коли DOM так, щоб говорити повністю завантажений.
Вся HTML зверху вниз, вліво або вправо було прочитано
в пам'ять і є деякі деревоподібна структура всередині пам'яті.
Тепер це добре, тому що якщо я хочу, щоб почати грати
з ним навколо і зміни Пункти меню, видалення речі,
додавши речі, я краще почекати
не раніше, ніж через замовчуванням DOM на місці.
Так що це просто стандартна Синтаксис JQuery.
Це рівнозначно тому, коли DOM готовий.
І тепер це дійсно просто поєднання
синтаксису JQuery і деякі HTML.
Так, наприклад, я вирішив, що це було просто турбує мене.
Ніхто на кампусі не говорить, про, ви приймаєте Comp Sci 164,
або Comp Науково що завгодно, ви кажуть CS164 або CS незалежно.
Так незначні трохи неприємність, ми хочемо, щоб змінити це,
так як ми можемо зробити це з щось на зразок JavaScript?
Ну, зауважте, якщо я перейдіть на сторінку тут
і на вершині сторінки, раніше був CS164.
Якщо я відкриваю Chrome, який є корисним браузера
для ведення DOM перевірок і ви збільшите тут.
Зверніть увагу, що усередині цієї HTML був елементом, який мав ідентифікатор
з сухарях і що ID що робить?
Це однозначно ідентифікує один з цих вузлів в дереві
і як тільки у мене є унікальний ідентифікатор протягом деякого фрагмента
з HTML в DOM, зараз Я можу зробити все, що захочу
з цією веб-сторінці.
Я міг видалити всі DOM вузол.
Кожен HTML тегів зі сторінки і покласти все, що я хочу
але потреби ми досить скромним.
Я просто хотів для фрагмент коду тут.
Я хотів спочатку знайти заголовок розділу вкладки
який був одним з батьків елементи трохи вище, що.
І я хотів піти вперед і змін -
Я хотів, а зміни вміст
того, що за допомогою цієї HMTL функціонувати на заслання на CS164
а потім я хотів змінити CSS на ньому
мати вагу шрифту напівжирним шрифтом.
І ми не будемо вдаватися у великій детально на решті частини цього тут.
Але зверніть увагу, цю лінію тут.
Я глобальна замінити скрізь.
По суті кажучи, скрізь, де є проміжок
що має клас називається ellipsible,
це не стандартна річ,
Ось тільки що Полотно Програмне забезпечення вимагає певних класів.
Якщо він містить ключ фраза COMPSCI164 йти вперед
і замінити HTML всередині будь-який такий термін тільки з CS164.
А решта це досить добре прокоментував.
Але на кінцевий результат, що я робити це вручну з Chrome
або будь-який браузер, з'ясовуючи, що унікальні ідентифікатори
різні DOM вузли дерево і мутує їх
в тому, як я хотів.
І кінцевий результат, тепер, коли ми правильно права зміненими речі є
що тепер я можу поставити довільний шматок HTML тут.
Я можу вирвати речі як виносці.
Я можу вирвати HTML сюди і Я повинен махати величезний відмова від відповідальності.
Це повний хак
, Реалізації сайт, як це.
Але це свого роду говорить до розумового процесу
що повинно до середина семестру,
особливо коли ми проводимо час на JavaScript вам думати
про те, як можна вирішити різні проблеми, сподіваюся, краще
чим таким чином.
Але інгредієнти для вирішення проблеми
як це насправді просто зводиться до деяких основам.
Відкриття до чогось як інспектор в Chrome
і розуміння що DOM дерево.
Знаючи, що CSS селектори
для унікальних ідентифікаторів або для імен класів.
Знаючи деякі синтаксис чи це в JavaScript чисто
або в JQuery бібліотека насправді змінити DOM.
І врешті-решт, ми значною мірою здатні
зігнути програмне забезпечення нашій волі.
Але там, напевно, одна заковика.
Що ціна, яку ми, ймовірно, платити за це повного рубати?
Який ризик?
Так.
[Нерозбірливість Зауваження]
Саме так. Якщо Instructure перейменовує одну зі своїх класів
або перейменовує один з їхніх ідентифікаторів або просто переставляє їх HTML
який повністю їх прерогатива,
все це може порушити і Потім один з нас буде мати
його помічати або один з вас хлопці матиме повідомити
і ми будемо мати продумати, що ще раз.
Тому, можливо, не величезний справа, але все ще становить загрозу.
Що ще може статися?
Що ще погано про це підході?
Це менш часто в ці дні.
Так. Це трохи повільніше в тому, що -
, А не просто отримати першоджерело з сервера.
Ви зараз робить додатковий зміни на стороні клієнта.
І справді, якщо у нас була так набагато повільне підключення до інтернету,
ви насправді бачите швидше за все, деякі спалахи
на екрані у вигляді DOM вузли змінюються.
Ми просто, виявляється, є зв'язок,
досить швидкий комп'ютер і так це досить невловимим для користувача.
Але що, якщо у них є Відключені JavaScript?
Тепер це крайній кут випадок в ці дні.
Більшість людей - більшість коли вони залишають наявність на.
Але якщо це від того, що відбувається?
Ми не бачили ні цього б то не було.
Коротше кажучи, спираючись на JavaScript для чогось
як це зробило роботу
але винос, як ми пішли про дон це.
І для себе ви можете побачити просто при перегляді вихідного коду
а потім колупатися в будь-якому з двох адрес на cs164.net.
Як ми насправді це зробив?
Але його ілюструють, як ви можете почати будувати більш
цікаві презервативи і навіть у випадку
динамічно керовані веб-сайти як додаток Facebook,
або Gchat або т.п., які є постійно тягне в додаткових даних,
як ви можете насправді змінити цей інтерфейс.
Але тепер, давайте подивимося на Правильний спосіб почати робити речі.
Тому цього року, звичайно, на відміну від двох років тому
коли ви, хлопці, перш за все, в PHP за перше півріччя
і JavaScript для останнього половина тоді два роки тому,
ми звертали більше уваги на мобільний з трохи PHP, цього року,
ми вирішили змінити речі, щоб приділяти більше
на веб-додатків.
Реалізований не в пари людей
але в командах спеціально команди чотирьох
і мотиви було декілька.
Але серед них було те, що,
з командою з чотирьох чоловік там просто багато більше частин ви можете кусають
від як група.
Роблячи веб розробки, як правило, приземлитися себе до різних аспектів
проекту, що ви можете потім делегувати серед вашої команди.
Наприклад, ми, швидше за все, є один або два з вас
в даній команди, яка працює на передня частина, код JavaScript,
CSS, естетика.
Того ж проекту іншого один або двоє з вас буде зосереджена
на задньому кінці, база даних дизайн схеми, перевірка
даних, написання API, що Передній кінець люди працюватимуть.
І таким чином ми тільки отримали багато більш дихання можливостей
для людей, щоб співпрацювати.
І так ви знайдете, якщо ви зробили проекти
тільки з одним партнером в минулому,
що з чотирма це буде трохи більш складним,
цікавішим, але багато більш потужний, щоб все
з вас, хлопці співпрацюють разом.
З точки зору передумов, ми, ймовірно, буде дотримуватися цих
для каталогу чотири попередні курси CS.
І це засноване на досвіді.
Пару років тому в якості посилався вам раніше,
ми значною мірою дозволило будь-який, хто взяв тільки 50
або, може бути певний клас у високій Школа взяти курс
але було тільки такий розкид здібностей і рівня комфорту.
Він зробив це важко мати розмови на певні теми і багато
студентів в клас боровся.
Так ми думали таким чином,
ми можемо роду зробити все ласку колективно.
Так що майте це на увазі.
З точки зору розміру команди, чотири використовуватиметься за умовчанням
якщо у вас є три друзі, з якими ви б
як до партнера, це абсолютно нормально.
Ми не будемо мандат Конкретні команди для вас.
Якщо у вас немає друзів або партнерами на увазі для класу,
вже велика справа, ми не будемо тримати що розум, а й спробуйте
для полегшення тих, види партнерства.
З точки зору структури клас, це дуже аномальне.
Курс не буде структуровані здебільшого
навколо лекцій і НЕ будуть структуровані
навколо ви, хлопці, сидячи , Втупившись цей шлях
і я кажу так.
Замість більшість сеанси класу буде
у формі зустрічей команди.
Або ваша команда збереться тут або в іншому місці на території кампуса
протягом декількох годин в понеділок У другій половині дня або на пару
годині в середу У другій половині дня.
У найближчі тижні, ми подумаємо, який день
і цей час кожен люди будуть.
Якщо потреба бути, ми можемо налаштувати раз, але ми побачимо на основі
на опитуванні, що ви, хлопці, все зрештою заповнити.
Що відбувається в цих зустрічах?
Так щотижневі зустрічі є
де ви, хлопці, в першу чергу представити прогрес
над різними проектами, більш на тих, хто в даний момент.
Так на цих зустрічах команди, один з професорсько-викладацького складу та
або сам буде присутній і мета буде для кожного
з чотирьох осіб в Команда повідомити про віхи
що у вас є або не досягли.
Де віхою будуть визначені
як дослідження щось, реалізації щось,
проектування щось, думаючи про щось або т.п.,
захисту проектних рішень.
Так it's - ми мали на увазі цей клас
щоб особливо важливо або складним.
Таким чином, її не просто збирається бути говорити про вашому дні
і як ви насправді вирішили здійснити це, але я і Роб
і Тім, хто зустрінемося в трохи буде там, щоб кинути вам виклик.
Так що, якщо ви прийняли рішення
і це не обов'язково найкраще, що все в порядку.
Якщо у вас дійсно є сильна думку про те, чому ви це зробили.
І у відповідь на форма, ну, це працює
але я не зовсім впевнений, є не те, що дійсно очікував
на цих засіданнях.
Так що це насправді означає бути двонаправлений розмова
в якій ви захищаєте свою рішення, а також переконати нас
що шлях у Вас є прийняті ідеально краще
або це можливість для вас запитувати зворотний зв'язок від нас
і навіть ваші партнери
щодо того, що ви могли б робити по-іншому.
А потім, зокрема, це будуть можливості
для перевірки коду.
Так ви, хлопці, будете писати JavaScript код і PHP код
та інші технічні аспекти кожного проекту
і мета буде в перед телевізором з великим екраном,
навколо столу, як це для одного з вас стояти
за один раз, хто має робив велику частину роботи
на деякому аспекті проект заклали
і представити код.
І дай нам словесний тур Код і дають нам можливість
сказати, чому у вас є шість вкладених циклів, що реалізують
щось в цьому роді?
Або чому б вам не мають індексів
в таблиці бази даних різних теми, які ми будемо досліджувати
протягом семестру.
Так іноді ми будемо є технічні переговори або
у вигляді їх в зустрічі людина стиль
де ми всі зібралися разом або за допомогою відео
зробити речі трохи асинхронний
заради зручності користувачів про особливо технічні питання
та інструменти, які ми будемо використовувати протягом цього семестру.
Деякі популярні JavaScript бібліотеки
наприклад є Backbone.js і Bookshelf.js і Express.js.
Це все інструменти з які ви можете зробити веб-
додатки, що використовують JavaScript.
Не на боці клієнта, хоча
а на стороні сервера з використанням рамки називається Node.js
який є альтернативою використовуючи щось на зразок Apache
або Microsoft IIS або інший програмне забезпечення веб-сервера.
Тому ми насправді писати в клас код JavaScript,
як на стороні клієнта, як а також на стороні сервера.
Ми будемо говорити про інструменти, з якими деякі
з вас вже знайомі.
Такі речі, як Git.
Ми будемо пірнати глибше на речі як SQL і обмежень
і угоди і багато з деталей, які, безумовно,
в класі, як 50, ми частково махаємо руками заради рази
але повіки важливо
коли насправді реалізації Проект, який буде використовуватися
за фактичною і, сподіваюся, великій кількості користувачів
де продуктивність збирається почати, щоб змінити ситуацію.
У PHP світі, ми будемо використовувати рамки називається Laravel.
Це архітектура MVC.
Якщо знаєте або нагадати, що акронім.
І це лише купка PHP код, щоб зробити багато
робочих місць простіше і щоб зробити його простіше
написати більш складним програмного забезпечення зокрема проекти
, Які реалізуються кількома людьми.
Для тестування ми будемо використовувати інструменти як знущання в PHP одиниць
і ми отримаємо в звичку не тільки написання коду та сортування
стуку на нього, і Занимательно намагаються намагаються з'ясувати,
це працює, як ви хотіли.
Але замість робить це пройти певні випробування.
Так що особливо якщо ваш друг
у ваших змін групових деякий код, ви можете бути впевнені,
що тут у неї їсти не зламаний нічого просто
після перезапуску тести
що ви вже написана для цього коду.
Так що не треба регресії щоб глючить стану програмного забезпечення.
Крім того, проекти є
де ми витратимо більшу частину нашого часу.
Так немає ніяких іспитів.
Це все обумовлено проекти в цьому класі
і там дійсно просто два на команди.
По суті в першій половині семестру будуть зосереджені
на одному PHP на основі веб-сайтів
що матиме передню кінцевому користувачеві інтерфейси і для робочого столу
і, можливо, з мобільного.
Так що це буде можливість, хоча по дотичній до класу
насправді зробити щось на зразок мобільний веб-інтерфейс
або, якщо ви дійсно рішучості, Android
або IOS буде прекрасно.
Просто розумію, що кривої навчання є
якщо незнайомі б бути трохи вище.
Але він буде грати дуже красиво з баченням
з також маючи кожен проект мати деяку задню частину API.
Так що ви можете мати поділ,
абстракція між тим, що ви робите і що Аліса і Боб
і Чарлі у вашому Група також також.
Так що кожен з ваших передніх кінцях
або назад кінці можуть якось повідомляються.
З точки зору специфіки, для платформи,
ми покладаємося на Laravel і Красномовний який є ОРЗ,
Об'єкт-ставлення Mapper, який це просто шар програмного забезпечення
що адреси М в MVC, моделі.
Це робить його трохи легше особливо для великих проектів
запитувати дані з бази даних і для запису даних
і представляти реальний світ особи, не маючи
написати сирої код SQL.
У світі JavaScript, ми знову використовувати експрес
і Книжкова полиця, який є аналогами
у світі JavaScript.
Але використання замість Apache за допомогою Node.js
який стає все більш популярним і дозволяє особливо
для додатків, пов'язаних в режимі реального часу взаємодії,
діаграма номера тощо.
Вузол набагато краще ніж Apache при використанні -
при реалізації проекти, як, що
тому що ви можете відправляти повідомлення за допомогою моделі, як паб і південь,
публікації та підписки, якщо знайомі з тих фраз.
Так про це напрямку середина семестру.
З точки зору очікувань, це їм для курсу.
Відвідувати або подивитися ці випадкові Переговори, технічні переговори.
Графік, для якого в кінцевому рахунку поставити
на сайті курси.
Брати участь у всіх зустрічей.
Так відвідуваності потрібно в кожен з причин зустрічей команди "
адже ось де найбільш навчання ході автора
і зворотного зв'язку і взаємодії відбудеться.
Щотижневі віхи, ми будемо використовувати це інструмент, який я буду згадувати
з в одну мить, щоб взагалі призначити вас від одного або двох
із співробітників у кожній з чотири людини в групі.
Розваги і тих, речі прийдуть у вигляді
чому б вам не Ветеринар йти цю опцію.
Чому б тобі не піти ветеринар це варіант, і з'ясувати, які
з цих двох реалізації Можливості краще
з сьогоднішнього дня і сказати на наступному тижні.
Чому б тобі не піти здійснити це?
Або ви проектуєте ці таблиць бази даних.
І так коротше графік в ході відбувається
бути досить органічних залежно від проектів
що кожна команда снасті залежності на те, що ваші висновки
коли перевірки, деякі реалізації варіант, і залежно потенційно
на тому, що кінцеві користувачі в кінцевому рахунку, хочу проект зробити.
І так в цьому напрямку, є немає фіксованих термінів за, говорять.
Там буде в значній мірі бути в прокатному призначення
строків кожні кілька днів, щотижня на основі
на розмови, які у вас є з одним або двома
із співробітників на вашому столі.
У кінцевому рахунку, хоча те, що через є подання
з цих двох фінальних проектів.
У плані того, що проекти будуть,
Проекти будуть бути або запропонував
і обраний вами, хлопці.
Справді, у формі лотереї наприклад вам буде запропоновано
від того, що один або кілька проектів особливо, що так чи інакше стосуються
в кампус, що ви думаєте, що бути переконливим для реалізації.
Оскільки однією з надій для гольфу
що все, що проекти роблять приходять
з цього курсу вижити кінець семестру.
І так, особливо якщо вони кампуса теми,
Чи, якщо це вже інша Каталог Звичайно, торговий інструмент
або календар подій або трансфер або будь-яку кількість
популярних остаточних проектів.
Надія після закінчення цього семестру є
що будь-який такий проект жити.
І справді в цьому напрямку,
що ми думали, що ми робимо, зробити його трохи цікавим.
А також свого роду можливості проникнення в суть
для дебатів за цих умов для Найбільш будь-який проект, який ми
як клас вирішувати в цьому семестрі,
буде дві команди присвоєний цьому ж проекту.
Загальна ідея в тому, що вони насправді не передбачається
говорити про свої різні дизайнерські рішення,
а її призначається, щоб бути більш конкуренції, щоб
хто може в кінцевому рахунку виробляють кращий дизайн, реалізація.
Так що наприкінці семестр, приходять травня, ми вантажимо один
а не обидва цих розчинів.
І ми як курс візьме піклуватися про хостинг і т.д.
так що ваші спадщина живе на кінці пружини.
Що означають ці програми робити?
Може бути що завгодно, щось для відділу,
щось для студентської групи,
щось для студентів більш взагалі, що буде частиною
розмови на наступному тижні
до занурення з головою
після збору жменю таких проектів.
З точки зору персоналу, не кажучи мені представити Тіма і Роба
хто хотів би, щоб привітатися.
І саме ці хлопці, які для один з проектів буде -
для обох проектів буде первинним радник.
По суті на одному з проекти, Роб збиратиме
з вами на тиждень протягом цих чатів.
Для одного з проектів, Тім зберуться з вами
для тих чатів і ми будемо поміняти приблизно середина семестру
як ми переходимо проектів.
Якщо вам подобається просто говорити поруч з цим мікрофоном.
>> Привіт, я Роб.
Я закінчив у травні минулого року з [нерозбірливо].
Я наставник в CS тут і зараз.
Збуджені для курсу.
>> І я Тім і я насправді абсолютно новий для області.
Я родом з Філадельфія так що я просто почав
тут пару тижнів тому, і я дійсно
в програмне забезпечення з відкритим вихідним кодом.
Я допомогти з підтримкою Backbone.js проект, в якому деякі
з вас можуть бути знайомі з
і я також створив Bookshelf.js проект
що Давид згадати.
Таким чином, я радий см. проекти.
>> Дійсно.
Для отримання додаткової інформації про Тім, принаймні, якщо ви йдете
на головну сторінку курсу і натисніть його ім'я це призведе
до його сховище GitHub, якщо Ви хотіли б поглянути на деякі
його з відкритим вихідним кодом інструменти та проекти.
Так що в плані сортів, просто Тому що це відповіді навіть
якщо роду дотичній до більше бачення класу,
як буде підсумкові оцінки визначається?
Так що ми будемо в кінцевому рахунку, бути досить суб'єктивним основі
на взаємодії ми Ви протягом -
з вашим протягом семестру основі
на ваших внесків як для сховищ коду
і розмови що у нас є.
І в шкаралупі горіха, він буде заснований
на ваших внесків проектам.
Дельта між першим тиждень і минулого тижня.
Так що не потрібно турбуватися, якщо вам є тільки чотири курси
під пояс, тоді як деякі інші студенти
в класі, можливо, доведеться вісім,
ми, звичайно, тримати це на увазі.
Сфера, коректність, дизайн і стиль вашого проекту,
так що ці знайомі осі.
Ступінь, в якій ви підготуватися до зустрічі.
Так що це дійсно призначений для бути можливість для нас
зібрати в тиждень і мають розумний і весело і свого роду
з ідеально емоційні дебати.
Часом, коли ви, хлопці, запропонувати, як можна вирішити
щось, а потім захистити те, що Ви могли б зробити і роль Тіма
і моя роль і роль Роба буде в тому, щоб кинути вам виклик, ми сподіваємося.
Так що або ви можете переконати піти
в деякому іншому здійсненні напрям або можете бути впевнені,
і відчуваю себе досить добре про те, що, так,
Ви думаєте, у вас є краще реалізація можливості
для цього.
Зокрема, і, наскільки там буде інша команда робочий
в той же проекту з свій індивідуальний кут.
З точки зору інструментів, так що це буде можливо всього овертаймі
і ви можете використовувати все, що представляє інтерес
Щоб для вашого власного внутрішнього команди.
Але для найбільш частина, ми будемо використовувати
вільного інструмент під назвою Асани для управління завданнями.
Ви побачите більше на цьому через електронною поштою у найближчі дні
і це по суті інструментом через який ви можете працювати простору
і проекти по команді.
Так що, якщо ваш проект, щоб здійснити повний [фонетику].
Ваші чотири члени команди буде бути всередині цього проекту,
в цій папці, так сказати.
І ви, і ми зможемо призначити віхи і робити років
і дати і коментарі.
І це приємно, тому що це інтегрована з електронною поштою.
Таким чином, ви можете або не можете відвідати сайт це повністю залежить від вас.
І ви також можете отримати Сукупний сенс
про те, що люди є роботи і отримати уявлення про те
того, що відбувається за межами самостійно зокрема міхур
якщо ваша голова йде вниз через деякий час фокусування
на одній конкретній речі.
Для GitHub теж, якщо незнайомі, GitHub є одним
з найпопулярніших, якщо не найпопулярніший репозиторій
там для джерела кодувати ці дні.
Ми будемо використовувати його як центрального сховище для кожної команди з чотирьох чоловік
так що ви чотири, а потім ми три мають доступ до
і можу коментувати у вигляді
Відгуки код, використовуючи Інтерфейс GitHub в.
Але ми тебе познайомлю з, що
якщо не знайомі, коли прийде час.
І це тільки короткий проблиск Асана.
Швидкий погляд на GitHub і тепер дозвольте мені зробити паузу для будь-яких питань.
Так.
[Нерозбірливість Вопрос]
Хороше питання, що ми думаємо з Python або Ruby, рамок?
Вони могли б досягти ті ж цілі, зокрема.
Ми вирішили використовувати PHP в 164, бо багато
попереднього Мережі людей досвід виходить з 50
який використовує PHP прямо зараз.
Але абсолютно, міг будь-який з ці проекти зробити в Ruby,
Python, навіть Java або інший рамки, Node.js, звичайно.
Але ми вирішили використовувати PHP і ми вирішили використовувати Node.js
і ми хочемо, щоб стандартизувати ті, для обох проектів
так що це набагато простіше як клас
мати дуже схожі розмови
і не надто багато яблук і апельсини в класі.
Незважаючи на те, що буде розсуд, коли справа доходить
до конкретних доповнень до бібліотеки, які ви могли б використовувати
для будь-якого з тих, середовища.
Так, претензії не приймаються, що один Особливо краще
ніж інший.
І PHP є свого роду потворний історія, але це стало багато,
набагато краще в останні роки.
Так що попереду?
Ні домашніх завдань або будь-яке таке речі сьогодні інша
ніж відвідати цей URL якщо, звичайно, інтерес.
Ми відправимо посилання на сайті
якщо ви забули, де це.
Крайній термін для цього збирається бути 6 вечора в середу
так що Роб і Тім і я може сісти у той вечір
і переглянути уявлення і з'ясувати, як краще
оптимізувати групи і так далі.
Ми дамо вам знати, до четверга чи ні у нас були
у лотереї і якщо у нас є місце
так що ви, хлопці, можете отримати вивчення карти підписав контракт з фігурою
те, що ви хочете зробити.
І в той же час, якщо у вас є які-небудь питання,
перейти на сайт курсу.
E-mail персонал в cs164.net.
Коли ми повертаємося в середу, вона все одно буде цей формат.
Але, швидше за все, починаючи середині наступного тижня або тиждень
після якої ми ділимо в набагато менших груп
з тільки чотири з вас зібралися під час зі мною
і чи Тім і чи Роб.
Велике спасибі до команда в спині сьогодні.
Ми будемо бачити вас в середу.