>> Todo ben.
Benvido á Ciencia da computación 164.
Entón, antes de mergullo cunha visión xeral
de que o curso será sobre este semestre e algo
de material neste primeiro día, Pensei en darlle un sentido
de como pasamos a noite pasada.
Non é tanto como desafío do lado do servidor que enfrontamos
pero un do lado do cliente un.
Entón, ter calquera de vostedes descubriu esta web especial só aínda
ou lona que algúns Harvard cursos están movéndose para?
Entón Genwi está a piques de morrer un lento morte se chegou adxunto
para iso, é probable que ser substituído por Canvas.
E entón pensamos que ir a bordo e ser parte
deste beta proba a usar Canvas que é unha ferramenta de código aberto.
É apoiado por unha empresa chamada Instructure.
Polo tanto, hai unha corporativo apoio por tras del.
Pero para a maior parte estamos a usalo desta forma.
Pero onte á noite, cando tentabamos
para obter o sitio cursos finalizado, nós funcionan en un monte
da frustración porque esta é un sistema de xestión de aprendizaxe
que quere dicir que é un peza de software
co cal pode xestionar o contido
usar interface baseada na web.
Non ten que usar ficheiros de configuración do arcano.
Non ten que saber nada sobre bases de datos,
é moi fermoso e punto prema en un xeito sitios de Google
ou algo como isto podería ser.
Pero, como resultado, foi moi duro para facer algo simple como -
imos ao web cursos.
Agora só tes que poñer as opcións do menú neste lado da man esquerda.
O caso en cuestión, non hai nada hai, de feito, agora
porque a forma como o software está deseñado é que, se quere
para instalar as cousas en o menú do lado esquerdo,
ten que realmente instalar estes módulos
ou aplicacións no software.
E nós non queremos facelo.
Nós só queriamos unha ligazón gusta do programa.
Queriamos unha ligazón ao persoal.
Queriamos unha ligazón a videos e similares.
Entón, se atoparonse cos sitios,
é dende o sitio web de terceiras partes
pero non ten control sobre o código fonte.
Non ten acceso ó servidor, non se pode SSH,
podes SFTP, todo o que pode usar é a interface web local
e quere comezar a cambiar
ou cambiando o usuario interactuar a través doutros medios.
O que pode o seu primeiro instinto ser?
Que preguntas pode preguntar de Instructure neste caso
da empresa para que podes tipo de traballo
en torno destas limitacións como fixemos?
Queremos engadir opcións de menú
pero non podemos cambiar seu código do servidor.
Entón, cal é a solución pode suxerir que isto?
É.
[Inaudível Observación]
Aceptar.
[Inaudível Observación]
É. Para que puidésemos considerar algo
como unha extensión de Chrome.
Se non está familiarizado, un Chrome extensión é esencialmente unha peza
de software de Chrome navegador xeralmente escrito
en JavaScript.
E é só un xeito de inxectar código tipicamente JavaScript quizais
algúns CSS nunha web páxina que visita.
Polo cal a extensión Chrome é só vixían constantemente o que
sitios que visita e intentando detectar.
Oh, se é facebook.com facelo.
Oh, se está en isites.harvard.edu facelo.
Entón, aqueles de vostedes que pode usaron plug 2x de CS50
en que lle permite acelerar vídeos superior é exactamente iso.
Entón, iso é interesante e está tipo de no camiño correcto.
Porque se non ten acceso ao servidor, só quere
para cambiar de algunha maneira o DOM o árbore que o usuario está a ver,
pode moi ben só facelo do lado do cliente.
Agora está claro que unha captura evidente
de usar un cromo extensión é o que?
Correcto. Entón, non todo o mundo está a usar Chrome e se sente especie de coxo
se ten unha especie de ao mandato que todos
dos seus usuarios poden empregar só a páxina
para ver as opcións do menú se eles teñen Chrome.
Entón o que máis podería poderiamos queremos pedir Instructure?
>> Entón, unha cousa é que eu creo que probablemente pode engadir un texto
na web, non?
>> Aceptar.
>> Descubra se poida realmente poñer HTML no texto.
>> Aceptar. Boa.
Entón, poderíamos preguntar-lles se puidésemos poñer HTML no propio texto.
Entón en vez de publicar unha textual anuncio, podemos engadir ligazóns?
Podemos engadir imaxes?
Podemos engadir marcadores?
Todo o que poderiamos quere facer esteticamente.
E a resposta curta é si.
Hai de feito unha tipo de WYSIWG,
O que ve é o que Obter editor que vén
con este particular peza de software
que permite que edite.
Cousas como a páxina de inicio co meu nome e Rob
e Tim e así por diante.
E iso nos levou parte do camiño ata alí.
Desafortunadamente isto non fai imos poñer nada aquí
por exemplo.
Isto non imos poñer nada aquí porque estamos limitados
polo que o orixinal autores querían que fixésemos.
Entón, nós estamos un paso máis preto.
Que máis poderiamos pedir á empresa?
Cales son os outros Solucións alternativas quizais?
Ten que ser resoltas.
Que máis se pode facer?
Entón estaba á dereita seguir con esta noción
de client-side JavaScript inxección.
De que outra forma poderiamos obter JavaScript na páxina web, se cadra, non?
Porque unha vez que tes o JavaScript,
podes facer moitas cousas aínda que o seu experimento
con JavaScript está limitado a 50 ou algunha outra experiencia previa,
vostede sabe, que pode percorrer a árbore
que é unha páxina web, o DOM.
Probablemente se lembra de que Pode engadir ou eliminar nós de nós.
Pode inxectar cousas nunha páxina web.
En realidade é exactamente iso que os 2x CS50 conectar fai.
Resga os Genwi ' reprodutor de vídeo e puts
nun diferente todos xuntos.
Así que se a empresa Instructure permitiu-lle
para inxectar Javascript na súa páxina web curso?
Noutras palabras, o que se permitiu-lle a través do seu GUI,
súa interface para WYSIWG pega a URL dun ficheiro JS
e quizais mesmo un arquivo CSS. e logo, eles coidaron
do proceso de inserción de el na parte superior de cada páxina.
Entón, por suposto, esta foi o único xeito que puidemos
para conseguir isto.
Se eu ver o código fonte da páxina aquí - e deixe-me achegar e buscar
para cs164.net que é un dominio que o curso propio.
Teña en conta que a través de algunhas series de pasos, tardou un tempo para descubrir
coa súa documentación.
Nós somos capaces de dicir, na parte superior de cada páxina web que saídas Canvas
a este curso, saída. css.
E se facemos outro comando f e buscar un pouco máis,
vai ver que aquí abaixo,
noutras citas con algún JavaScript código hai tamén mencionar
esta URL aquí.
Así, noutras palabras, nós especie de enganar-los
en inxectar calquera que sexa CSS,
o que quere que nós JavaScript quere na páxina web.
Para que, entón, levanta a pregunta, o que fai?
Ben, imos adiante e basta incorporarse esta fonte,
pega este aquí enriba.
Prohíbese porque para simular este,
Eu CHMOD [fonética] todo.
Entón deixe-me dar iso de volta.
O acceso de lectura e agora volver cargar.
Entón, o que fixemos?
Así, vai estar mellor para esta particularmente medio do semestre
cando gastamos unha morea de noso tempo en JavaScript.
Pero o que iso parecen estar facendo?
Entón, un na parte superior desta Arquivo JS que unha vez máis está incluído
en cada páxina web que o Claro que agora se executa na páxina web.
Nós encontramos a ver se o tipo de jQuery non é indefinido.
Así, en termos laicos O que significa isto?
O que significaría se jQuery é indefinido?
Ben, ten JavaScript cargada.
Non ten jQuery cargado.
Entón, nós estamos só esperando que Instructure,
a empresa de feito, é usando jQuery si.
En caso contrario, teriamos que pegue a biblioteca jQuery na parte superior
deste arquivo, de xeito para ter acceso a el.
E iso non é porque eu simplemente queren ter acceso ás cousas
como o sinal notación dólar e outro funcionalmente
que ven con jQuery.
Se ben se lembran este biblioteca e familiarizado
ou se xa fai un tempo, descansar seguro imos chegar a este
con en poucas semanas.
Entón, cales son as cousas que estamos facendo aquí?
Polo tanto, para aqueles que poden lembrar, o que esta sintaxe aquí significa?
Cando acaba de pasar por un anónimo función ou función lambda?
En CS51 falar co función jQuery así.
Cando é este código será executado?
É.
[Inaudível Observación]
Exactamente. Polo tanto, este código, por natureza,
esta chamada de función estándar só comezará a cabo
cando o DOM así falar é totalmente cargado.
Todo o cumio HTML abaixo, esquerda ou dereita foi lido
na memoria e hai algún estrutura de árbore dentro da memoria.
Agora iso é bo porque se quero comezar a xogar
redor con el e cambiando o As opcións de menú, eliminando cousas,
engadindo cousas, é mellor eu esperar
ata polo menos o estándar DOM está no lugar.
Polo tanto, esta é só defecto sintaxe jQuery.
É equivalente a dicir cando o DOM está listo.
E agora é realmente só unha combinación
de sintaxe jQuery e algúns HTML.
Así, por exemplo, eu decidir que iso estaba me dando guerra.
Ninguén no campus, di, oh, está tomando Comp Sci 164,
ou Comp Sci o que quere, vostede CS164 dicir ou o que quere que CS.
Entón, pouco menor problema, queremos cambiar isto,
así como podemos facelo con algo parecido JavaScript?
Ben, o aviso previo, se eu ir á páxina aquí
e na parte superior da páxina, anteriormente era CS164.
Se eu abrir o Chrome, que é un navegador útil
para facer inspeccións DOM e aumenta o zoom aquí.
Teña en conta que neste HTML era un elemento que tiñan un ID
de fariña de rosca e ID que fai o que?
Identifica unha única dos nós da árbore
e así que eu teño a identificador único para algún anaco
HTML na DOM, agora Eu podo facer o que me queres
con esta páxina web.
Podería eliminar cada nó DOM.
Cada etiqueta HTML da páxina e poñer todo o que quero
pero necesidades que son moi humildes.
Eu simplemente quería para o fragmento de código aquí.
Quería primeiro atopar a cabeceira da sección guías
que era un dos pais elementos só por enriba diso.
E eu quería ir adiante e cambio -
Quería si cambio os contidos
de que a través desta HTML función de unha ligazón a CS164
e entón eu quería cambiar o CSS nel
ter un espesor de fonte de negra.
E nós non imos entrar en grandes detalles sobre o resto deste aquí.
Pero teña en conta esta liña aquí.
Eu fixen unha substitución global en todas as partes.
Esencialmente, dicindo: en calquera lugar que se ve un palmo
que ten unha clase chamado ellipsible,
iso non é unha cousa normal,
iso é só o que o Canvas software chámase determinadas clases.
Se contén a clave frase COMPSCI164 vai adiante
e substituír o HTML dentro calquera período con só CS164.
E o resto é moi ben comentado.
Pero, no resultado final, o que eu son facendo é a man con Chrome
ou calquera navegador de descubrir o que os identificadores únicos son
varios nós DOM no árbore e transformando-os
do xeito que eu quería.
E o resultado final, agora que nós CHMOD cousas correctamente é
que agora podo poñer un arbitrario peza de código HTML aquí.
Podo arrincar as cousas como o pé de páxina.
Podo arrincar HTML aquí e Eu debería acenar un enorme aviso de exención.
Este é un hack completo
sendo aplicando un sitio como este.
Pero que tipo de fala ao proceso de pensamento
que debería para o medio do semestre,
especialmente cando pasar o tempo en JavaScript pensar
sobre como pode resolver varios problemas espero que mellor
que deste xeito.
Pero os ingredientes para resolver un problema
como esta realmente só reducida a uns principios.
Abrindo-se a algo como Inspector de Chrome
e comprensión que a árbore DOM é.
Saber o que o Selectores CSS son
para IDs exclusivos ou para os nomes de clases.
Sabendo algunha sintaxe se é en JavaScript puro
ou en jQuery biblioteca para realmente cambiar o DOM.
E ao final do día, estamos moi ben capaz
dobrar o software a nosa vontade.
Pero probablemente hai un pero.
Cal é o prezo que pode ser pagando por este hack completo?
Cal é o risco?
É.
[Inaudível Observación]
Exactamente. Se Instructure NOME unha das súas clases
ou renomear un dos seus IDs ou só reorganiza o seu HTML
que é totalmente súa prerrogativa,
todo isto podería romper e logo un de nós terá
nota-lo ou un de vós caras terá de saber
e nós imos ter para pensar sobre iso de novo.
Entón, talvez non un enorme tratar, pero aínda unha ameaza.
Que máis podería ocorrer?
Que máis é malo sobre esta visión?
É menos común nos días de hoxe.
É. É un pouco máis lenta en que -
no canto de só obter a orixinal a partir do servidor.
Está agora a facer adicional do lado do cliente cambia.
E, de feito, se tivésemos un modo conexión a internet moi lenta,
realmente ver probablemente algúns flashes
na pantalla como DOM nós están cambiando.
Nós só terá lugar a ter unha conexión,
un ordenador moi rápido e así por é moi evasivo ao usuario.
Pero e se eles teñen JavaScript desactivado?
Agora, este é un extremo caso canto estes días.
A maioría das persoas - a maioría cando saen JavaScript diante.
Pero se está fóra o que pasa?
Nós non vemos ningunha de que calquera.
Así, en breve, contando con JavaScript para algo
así comeza o traballo feito
pero o takeaway é como fomos sobre dong iso.
E pode ver por si mesmo só vendo a fonte
e logo picar arredor en calquera das dúas URLs en cs164.net.
Como nós realmente fixo iso?
Pero a súa ilustrativos de como pode comezar a construír máis
DON interesantes e aínda no caso
sitios de accionados de forma dinámica como a aplicación de Facebook,
ou GChat ou semellantes que son constantemente a tirar en máis datos,
como pode realmente cambiar esa interface.
Pero agora, imos ollar para o camiño certo para comezar a facer as cousas.
Polo tanto, este ano, o curso, ao contrario de hai dous anos
cando vostedes sobre en PHP para o primeiro semestre
e JavaScript para o último metade mentres que hai dous anos,
nós nos concentrados máis no móbil cun pouco de PHP, este ano,
decidimos cambiar cousas para concentrarse máis
en aplicacións baseadas na web.
Aplicado non en pares de persoas
pero en equipos especialmente equipos de catro
e as motivacións foron varios.
Pero entre eles eran de que,
cun equipo de catro persoas hai só moito máis pezas podes morder
fóra como un grupo.
Facer evolución web tende a aterrar-se a diferentes aspectos
do proxecto que poida entón delegar entre o seu equipo.
Por exemplo, nós imos ser ter un ou dous de vós
dunha determinada equipo traballando no front-end, o código JavaScript,
o CSS, a estética.
O mesmo proxecto doutro un ou dous de vós se concentrar
no extremo traseira, a base de datos proxecto de esquema, a validación
de datos, gravando a API que os finais xente de diante vai funcionar.
E, así, quedou moi máis alento de oportunidades
para a xente a colaborar.
E así que vai atopar se xa fixo proxectos
con só un socio no pasado,
que, con catro que será un pouco máis reto,
máis interesante, pero moi máis poderoso do que ter todo
de vós colaborando xuntos.
En termos de requisitos, que probablemente vai estar con estes
para o catálogo catro cursos anteriores do CS.
E iso está baseado na experiencia.
Un par de anos, como aludido antes,
nós practicamente permitido quen tomou só 50
ou que algunha clase en alta escola para facer o curso
pero había só como un spread de habilidades e niveis de confort.
Fixo que é difícil ter certas conversas e moi
dos estudantes no clase loitou.
Entón pensamos deste xeito,
podemos especie de facer todo un favor colectivamente.
Polo tanto, manter isto presente.
En termos de tamaño do equipo, catro será o estándar
se ten tres amigos con quen tiña
como facer colaboración, iso é totalmente bo.
Non imos mandato equipos específicos para ti.
Se non ten amigos ou socios en mente para a clase,
non é gran cousa, imos seguir que mente tan ben e tentar
para facilitar os tipo de asociacións.
En termos de estrutura do clase, isto é moi anómala.
O curso non será estruturada para a maior parte
arredor de conferencias e non vai ser estruturado
arredor de vós sentado alí mirando deste xeito
e me falar deste xeito.
Pola contra a maior parte do sesións de clase será
en forma de reunións de equipo.
Ou o seu equipo vai reunir aquí ou noutro lugar no campus
por un par de horas o luns tardes ou por un par
de horas o mércores tardes.
Nas próximas semanas, imos descubrir cal día
e que cada vez xente vai ser.
Se a necesidade de ser, podemos axustar o veces, pero veremos Based
nunha investigación que vostedes en definitiva, cubrir.
Qué acontece nesas reunións?
Así, as reunións semanais é
onde vostedes sobre presentar os avances
en varios proxectos, máis sobre aqueles en un momento.
Entón, nesas reunións de equipo, un dos docentes e
ou eu mesmo estará presente eo obxectivo será para cada
das catro persoas no equipo para informar sobre os marcos
que ten ou non conseguiron.
Onde a marca defínese
como buscar algo, aplicar algo,
proxectar algo, pensar sobre algo ou similar,
defender as decisións de deseño.
Así é - que significaba esta clase
de particular crítico ou reto.
Entón non é só ir a ser falar do seu día
e como realmente escolleu aplicar iso, pero eu e Rob
e Tim, que vai coñecer un pouco vai estar alí para desafialo.
Así que se tomou unha decisión
e non é necesariamente o mellor que está ben.
Se realmente ten un forte opinión acerca de por que o fixo.
E na resposta do forma, así, funciona
pero eu realmente non estou seguro é non o que realmente espera
nesas reunións.
Entón é realmente deseñado para ser unha conversa bidireccional
en que defender a súa decisións e tamén nos convencer
que o camiño que ten toma é ideal mellor
ou é unha oportunidade para ti para solicitar o feedback de nós
e mesmo os seus socios
en canto ao que se pode facer de forma diferente.
E, a continuación, en particular estes serán oportunidades
a revisión de código.
Entón vostedes están a escribir Código PHP e JavaScript código
e outro técnico aspectos de cada proxecto
ea meta estará en fronte dunha televisión de pantalla grande,
arredor da mesa como esta a un de vostedes para estar
nun momento quen ten está a facer máis traballo
nalgún aspecto o proxecto colocar
e presentar o código.
E dános unha visita verbal do código e dar-nos unha oportunidade
dicir por que ten seis loops aniñados execución
unha cousa desas?
Ou por que non ten índices
na súa táboa de base de datos diferentes temas que imos explorar
ao longo do semestre.
Entón, de cando en vez imos ten charlas técnicas ou
baixo a forma destes en reunións persoa de estilo
onde todos se reúnen en conxunto ou a través de vídeo
para facer as cousas un pouco asíncrono
polo amor de barrio en temas especialmente técnicos
e ferramentas que usaremos durante este semestre.
Algúns JavaScript populares bibliotecas
por exemplo, son Backbone.js e Bookshelf.js e Express.js.
Estas son todas as ferramentas con que se pode facer con base na web
aplicacións usando JavaScript.
Non no lado do cliente, aínda que
pero no lado do servidor a usar un cadro chamado Node.js
que é unha alternativa ao usar algo como Apache
ou Microsoft IIS ou outros software de servidor web.
Entón, imos realmente escribir en o código JavaScript clase,
tanto no lado do cliente como así como sobre o lado do servidor.
Falaremos sobre ferramentas coas que algúns
de vós xa está familiarizado.
Cousas como Git.
Imos mergullo no máis profundo para as cousas como SQL e restricións
e transaccións e moito dos detalles que seguramente
nunha clase como 50, que tipo de acenar as mans para arriba tempos ben
pero son cada vez máis importante
cando, en realidade, a posta en marcha dun proxecto que será utilizado
por real e espera que gran número de usuarios
onde o desempeño vai comezar a facer a diferenza.
No mundo do PHP, usaremos un cadro chamado Laravel.
Esta é unha arquitectura MVC.
Se coñecer ou lembrar que siglas.
E é só unha morea de Código PHP para facer unha chea
de postos de traballo máis fácil e para facela máis fácil
escribir máis complexo software especialmente proxectos
que son aplicados por varias persoas.
Para as probas, imos utilizar ferramentas Mofaría como en unidades de PHP
e nós imos adquirir o hábito de non só a escrita de código e clasificar
de bater nel e informal intentando intentando descubrir,
funciona como desexado.
Pero, en vez faino pasar algunhas probas.
Así que sobre se un amigo seu
nas súas cambios de grupo algún código, pode que seguro
que aquí non ten roto nada, simplemente
executando de novo as probas
que xa escrita para este código.
Así que non regresións con erros estados de software.
Ademais, os proxectos é
onde pasaremos maior parte do noso tempo.
Polo tanto, non hai exames.
Todo é conducido por proxectos nesta clase
e non hai realmente ser só dous equipos por.
Esencialmente o primeiro semestre do semestre incidir
nun sitios baseados en PHP
que terán usuario frontal as interfaces tanto para o escritorio
e opcionalmente móbil.
Polo tanto, esta será unha oportunidade, aínda tanxencial á clase
para realmente facer algo como unha interface baseada en web móbil
ou se é realmente determinado, Android
ou iOS sería perfectamente ben.
Basta entender que o curva de aprendizaxe non
familiarizado faría ser pouco maior.
Pero ía xogar moito moi ben coa visión
de ter cada proxecto ter algunha API back-end.
De modo que pode ter unha separación,
abstracción entre o que está facendo eo que Alicia e Bob
e Charlie na súa grupo son tamén ben.
Para que cada un dos seus front-ends
ou cara atrás extremos pode dalgún xeito se intercomunicam.
En termos de especificacións, ao cadro,
imos contar con Laravel e Elocuente que é un ORM,
un mapeador obxecto-relación que é só unha capa de software
que aborda a M no MVC, o modelo.
Isto fai un pouco máis fácil sobre todo para grandes proxectos
para consultar datos de bases de datos e gravar datos
e para representar o mundo real entidades sen
para escribir o código SQL puro.
No mundo do JavaScript, que de novo vai usar o Express
e Bookshelf que son análogos
no mundo JavaScript.
Pero en vez de usar Apache usando Node.js
que é cada vez máis popular e permite particularmente
para aplicacións que impliquen interaccións en tempo real,
cuartos gráfico e afíns.
Node é moito mellor que cando se usa Apache -
ao aplicar proxectos como o que
porque pode enviar mensaxes empregando modelos como pub e sub,
publicar e asinar, se familiarizado con estas frases.
Entón, máis sobre iso máis para a medio do semestre.
En termos de expectativas, estes son os do curso.
Participar ou asistir a estes ocasional charlas, conferencias técnicas.
A programación para que acabará por poñer
na páxina web de cursos.
Participar de todo das reunións.
Así, é necesaria a presenza cada un mor dos reunións de equipo
despois de todo o que é onde a maioría de instrución do curso
e feedback e interaccións vai ocorrer.
Marcos semanais, usaremos unha ferramenta que eu vou facer mención
dun momento a xeral asignar-lle a partir de un ou dous
dos membros do equipo a cada un dos catro persoas no grupo.
Cousas para facer e aqueles as cousas van vir en forma
de por que non vet ir esta opción.
Por que non ir vet esta opción e descubrir cal
dos dous implementación posibilidades son mellores
entre agora e dicir a próxima semana.
Por que non vai aplicar iso?
Ou proxectar estes táboas de base de datos.
E así, en breve a programación no curso vai
a ser moi orgánica dependendo dos proxectos
que cada equipo tackles función no que os seus resultados son
cando vetar algunha implementación opción e, en función potencialmente
sobre o que os usuarios finais, en última instancia quere que o proxecto de facer.
E así, para este fin, non hai prazos fixos por exemplo.
Non vai moi ben ser nunha asignación de rolamento
de prazos cada poucos días, cada semana, con base
nas conversas que tes con un ou dous
dos membros do equipo á súa mesa.
En último caso, aínda que o que se debido é a submisión
destes dous proxectos finais.
En termos do que o proxectos serán,
Os proxectos ser calquera proposta
e seleccionados por vós.
De feito, a forma de lotería por exemplo, lle será solicitada
sobre o que son un ou máis proxectos especialmente que dalgunha forma se relacionan
ao campus que pensas que faría ser atractivo para aplicar.
Desde unha das esperanzas ao curso é
que calquera proxectos veñen
deste curso sobrevivir o final do semestre.
E entón especialmente se son temas do campus,
si iso é outra catálogo de cursos, ferramenta de compra
ou eventos de calendario ou servizo de transporte ou calquera número
dos proxectos finais populares.
A esperanza tras o término deste semestre é
que tal proxecto vivir.
E, de feito para ese fin,
o que nós pensamos que facemos é facelo un pouco interesante.
E tamén unha especie de oportunidades de insight
para debates en que para máis calquera proxecto que nós
como unha clase solucionar este semestre,
haberá dous equipos atribuída a ese mesmo proxecto.
A idea xeral é que eles non están realmente quere
para falar sobre a súa varias decisións de deseño,
si o seu significado pode máis dunha competición en canto aos
que en última instancia pode producir o mellor deseño, implementación.
De xeito que ao final do semestre, veña maio, nós enviamos un
e non de ambas solucións.
E nós, como un curso terá coidar da hospedaxe e así por diante
de xeito que as súas vidas legados sobre o extremo do freo.
Que estas aplicacións fan?
Pode ser calquera cousa, algo para un departamento,
algo para un grupo de estudantes,
algo para os alumnos máis xeralmente que formará parte
da conversa a próxima semana
ata mergullarse de cabeza
despois de pegar un puñado de tales proxectos.
En termos de persoal, imos me presentar Tim e Rob
que quere dicir Olá
E é para estes faces que un dos proxectos será -
a ambos os proxectos será o seu principal asesor.
Esencialmente a un dos proxectos, Rob estará reunida
contigo semanalmente para estas conversas.
Para un dos proxectos, Tim reuniranse con vostede
para os chats e imos intercambiar preto de medio do semestre
como transición proxectos.
Se che gusta de falar preto deste micrófono.
>> Ola, eu son Rob.
Eu me forma en maio pasado desde [inaudível].
Eu son preceptor en CS aquí agora.
Animado para o curso.
>> E eu son Tim e eu estou realmente completamente novo para a área.
Son orixinalmente de Filadelfia entón eu comece a
aquí un par de semanas atrás e eu estou realmente
en software de código aberto.
Eu axudo co mantemento da Proxecto Backbone.js onde algúns
de que pode estar familiarizado coa
e eu tamén creou a Bookshelf.js proxecto
que David estaba mencionando.
Entón, eu estou animado para vexa os proxectos.
>> Traxe.
Para máis información sobre Tim, polo menos se é
a páxina de inicio do curso e prema o seu nome que vai levar
ao seu repositorio GitHub se que quere ollar para algúns
do seu código fonte aberto ferramentas e proxectos.
Entón, en canto a notas, só Porque este é un FAQ mesmo
unha especie de tanxente ao visión máis dunha clase,
Como é que as notas finais ser determinado?
Entón, o que nós imos, en última instancia ser moi subjetivas baseadas
sobre as interaccións que vostede durante o curso -
co seu sobre o curso do semestre base
nas súas achegas tanto para repositorios de código
e conversas que temos.
E, nunha casca de noz, basearase
nas súas achegas aos proxectos.
O delta entre o primeiro semana ea semana pasada.
Entón non se preocupe se teñen só catro cursos
co seu cinto mentres algúns outros estudantes
na clase pode ter oito,
imos certamente continuar isto presente.
O ámbito, corrección, deseño e estilo do seu proxecto,
para que eses eixes familiares.
O grao en que preparar para a reunión.
Entón, iso é realmente feito para ser unha oportunidade para nós
reunir semanalmente e teñen intelixente e divertido e tipo
debates de ideal emocionais.
Ás veces en que vostedes fan propoñer como pode resolver
algo e, a continuación, defender o que que se pode facer eo papel de Tim
e meu papel eo papel de Rob vai estar para desafia-lo, esperanzas.
Para que sexa posible ser convencido a ir para fóra
nalgunha outra aplicación dirección ou pode estar confiado
e sinto moi ben sobre o feito de que, si,
pensas que ten a mellor implantación posible
para este.
Particularmente e, na medida do haberá outro traballo en equipo
o mesmo proxecto de o seu propio ángulo individual.
En termos de ferramentas, de xeito que este talvez de todas as horas extras
e está invitado a usar todo o que é de interese
Para o seu propio equipo interna.
Pero para a maior parte, imos facer uso
dunha ferramenta gratuíta chamada Asanas para a xestión de tarefas.
Verá máis sobre iso a través de correo-e nos próximos días
e é esencialmente unha ferramenta a través do cal podes traballar os espazos
e proxectos para o equipo.
Polo tanto, se o seu proxecto é aplicar completos [fonética].
Os seus catro membros do equipo estar dentro deste proxecto,
nesa carpeta por así dicir.
E vostede e nós imos ser capaces de asignar obxectivos e facer do
e as datas e os comentarios.
E é bo porque é integrado co correo electrónico.
Así, pode ou non pode visitar a sitio é totalmente ata.
E tamén se pode obter un sentido árido
de que as persoas son traballar e ter unha noción
do que está pasando ademais súa propia burbulla especial
se a súa cabeza vai para abaixo despois dun tempo concentrando
nunha cousa particular.
Para GitHub tamén, se descoñecido, GitHub é un
dos máis populares, se non o repositorio máis popular
aí, a fonte codificar estes días.
Nós imos usar isto como unha central de depósito para cada equipo de catro
de xeito que catro e, a continuación, nós tres teñen acceso a
e pode comentar en forma
de revisións de código, a través A interface de GitHub.
Pero nós imos presenta-lo para que
se estraña cando chega a hora.
E iso é só unha rápida un reflexo de Asana.
Reflexo rápida no GitHub e agora deixe-me facer unha pausa para todas as preguntas.
É.
[Inaudível Pregunta]
Boa pregunta o que pensamos de cadros Python ou Ruby?
Poderían acadar o mesmos obxectivos, en particular.
Nós ocorrer usar PHP en 164, xa que unha gran cantidade
de web antes das persoas experiencias saíndo de 50
que usa PHP agora.
Pero seguramente, podería calquera destes proxectos pode facer en Ruby,
Python, Java ou incluso outro frameworks, Node.js certamente.
Pero nós ocorrer de usar PHP e nós ocorrer de usar o Node.js
e queremos estandarizar aqueles para os dous proxectos
de xeito que é moi máis doado como unha clase
ter moi semellante conversas
e non ten moitas mazás e laranxas na clase.
Aínda que non haberá discreción cando se trata
para os add-ons específicos en bibliotecas que pode usar
a un destes ambientes.
Así, non hai alegación de que un é particularmente mellor
do que o outro.
E PHP ten unha especie de un feo historia pero chega moi,
moito mellor nos últimos anos.
Entón, o que está por vir?
Sen lección de casa ou calquera cousas esta noite outra
que para visitar esta URL se de feito de interese.
Imos publicar a ligazón na web
Se esquece onde está.
O prazo para iso vai para ser 06:00 o mércores
para que Rob e Tim e eu Pode sentir-se aquela noite
e analizar as submissões e descubrir a mellor forma
para optimizar os grupos e así por diante.
Imos informarlles lo ata o xoves ou non tivemos
a lotería e se temos un punto
para que vostedes poidan obter tarxetas de estudo asinou contrato coa figura
o que quere facer.
E mentres tanto, se tes algunha dúbida,
ir ao sitio web do curso.
Correo electrónico persoal no cs164.net.
Cando chegamos de volta o mércores, será aínda este formato.
Pero probablemente comezando mediados da próxima semana ou a semana
logo onde dividir en grupos moi pequenos
con só catro de vós reunidos nun tempo comigo
e ou Tim e ou Rob.
Moitas grazas a o equipo arredor hoxe.
Imos velo na Mércores.