slides/slides03.tex
changeset 481 e03a0100ec46
parent 449 d67c5f7177a6
equal deleted inserted replaced
480:a623dd1f2898 481:e03a0100ec46
     5 \usepackage{../styles/langs}
     5 \usepackage{../styles/langs}
     6 %%\usepackage{../data}
     6 %%\usepackage{../data}
     7 \usetikzlibrary{shapes}
     7 \usetikzlibrary{shapes}
     8 \usepackage[export]{adjustbox}
     8 \usepackage[export]{adjustbox}
     9 
     9 
       
    10 
    10 \hfuzz=220pt 
    11 \hfuzz=220pt 
       
    12 
       
    13 \usepackage{tcolorbox}
       
    14 \newtcolorbox{mybox}{colback=red!5!white,colframe=red!75!black}
       
    15 \newtcolorbox{mybox2}[1]{colback=red!5!white,colframe=red!75!black,fonttitle=\bfseries,title=#1}
       
    16 \newtcolorbox{mybox3}[1]{colback=Cyan!5!white,colframe=Cyan!75!black,fonttitle=\bfseries,title=#1}
       
    17 
       
    18 
       
    19 
    11 
    20 
    12 %\setmonofont[Scale=.88]{Consolas}
    21 %\setmonofont[Scale=.88]{Consolas}
    13 %\newfontfamily{\consolas}{Consolas}
    22 %\newfontfamily{\consolas}{Consolas}
    14 
    23 
    15 \lstset{language=Scala,
    24 \lstset{language=Scala,
    43 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    52 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    44 \begin{frame}[t]
    53 \begin{frame}[t]
    45 \frametitle{%
    54 \frametitle{%
    46   \begin{tabular}{@ {}c@ {}}
    55   \begin{tabular}{@ {}c@ {}}
    47   \\[5mm]
    56   \\[5mm]
    48   \huge PEP Scala (3) 
    57   \hspace{7mm}\huge PEP Scala (\liningnums{3}) 
    49   \end{tabular}}
    58   \end{tabular}}
    50 
    59 
    51   \normalsize
    60   \normalsize
    52   \begin{center}
    61   \begin{center}
    53   \begin{tabular}{ll}
    62   \begin{tabular}{ll}
    54     Email:  & christian.urban at kcl.ac.uk\\
    63     Email:  & christian.urban at kcl.ac.uk\\
    55     %Office: & N\liningnums{7.07} (North Wing, Bush House)\bigskip\\
    64     %Office: & N\liningnums{7.07} (North Wing, Bush House)\bigskip\\
    56     Slides \& Code: & KEATS\bigskip\\
    65     Slides \& Code: & KEATS\bigskip\\
    57 
    66 
    58     Office Hour: &  Fridays 11:00 -- 12:00\\
    67     Office Hour: &  Fridays 13:00 -- 14:00\\
    59     Location: & N7.07 (North Wing, Bush House)\bigskip\\
    68     Location: & N7.07 (North Wing, Bush House)\bigskip\\
    60 
    69 
    61     Pollev: & \texttt{\alert{https://pollev.com/cfltutoratki576}}\\  \\
    70     Pollev: & \texttt{\alert{https://pollev.com/cfltutoratki576}}\\  \\
       
    71     %Additionally: & (for Scala) Tuesdays 10:45 -- 11:45\\ 
    62   \end{tabular}
    72   \end{tabular}
    63   \end{center}
    73   \end{center}
    64 
    74 
    65 \end{frame}
    75   %\tiny
    66 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
    76   %developed since 2004 bv Martin Odersky
       
    77   %picture about assignments
       
    78 
       
    79 \begin{textblock}{6}(0.5,0.5)
       
    80 \includegraphics[scale=0.035]{../pics/assign.jpg}\\[-1mm]
       
    81 \end{textblock}
       
    82 
       
    83 \end{frame}
       
    84 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
       
    85 
       
    86 
    67 
    87 
    68 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
    88 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
    69 % \begin{frame}[c]
    89 % \begin{frame}[c]
    70 % \frametitle{Preliminary 6}
    90 % \frametitle{Preliminary 6}
    71 
    91 
    79 % \end{itemize}  
    99 % \end{itemize}  
    80 % \end{frame}
   100 % \end{frame}
    81 
   101 
    82 
   102 
    83 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   103 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    84 
       
    85 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
    86 \begin{frame}[c,fragile]
       
    87 
       
    88 \begin{lstlisting}[language=Scala, numbers=none, xleftmargin=-1mm]
       
    89 def collatz(n: Long) : Long =
       
    90   {
       
    91     val toReturn = collatzHelper(n, 0)
       
    92     toReturn
       
    93   } 
       
    94 \end{lstlisting}
       
    95 
       
    96 \pause
       
    97 \bigskip
       
    98 \rule{11cm}{0.3mm}
       
    99 \bigskip
       
   100 
       
   101 \begin{lstlisting}[language=Scala, numbers=none, xleftmargin=-1mm]
       
   102 def collatz(n: Long) : Long =
       
   103   collatzHelper(n, 0)
       
   104 \end{lstlisting}
       
   105 
       
   106 \end{frame}
       
   107 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
       
   108 
   104 
   109 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   105 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   110 \begin{frame}[c,fragile]
   106 \begin{frame}[c,fragile]
   111 \frametitle{Default Arguments}
   107 \frametitle{Default Arguments}
   112 
   108 
   406 \includegraphics[scale=0.35]{../pics/commits.png}
   402 \includegraphics[scale=0.35]{../pics/commits.png}
   407 \end{textblock}
   403 \end{textblock}
   408 
   404 
   409 \end{frame}
   405 \end{frame}
   410 
   406 
       
   407 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
       
   408 {
       
   409 \setbeamercolor{background canvas}{bg=cream}
       
   410 \begin{frame}[c]
       
   411   \frametitle{\mbox{}\hspace{40mm}\textbf{Feedback in
       
   412       \textcolor{red}{\underline{CFL}!}}}
       
   413   
       
   414 \begin{minipage}{1.3\textwidth}
       
   415 \begin{mybox3}{End-of-year feedback for 6CCS3CFL in 2019}\it\small
       
   416 Unequivocally the worst module I've taken on this course. The subject
       
   417 matter is fascinating, however the insistence on the use of this
       
   418 abomination of a language "Scala" completely ruins it. If you're going
       
   419 to teach something as complex as this, use a proper language, not some
       
   420 "object oriented functional" abomination. Use C, you know, the
       
   421 language that real compilers are written in. I will go to the end of
       
   422 the earth to dissuade others from taking this module so long as Scala
       
   423 is still being used.\\
       
   424 \mbox{}\hfill-- Lone voice in the end-of-year feedback in 2019
       
   425 \end{mybox3}
       
   426 \end{minipage}\bigskip
       
   427 
       
   428 \end{frame}
       
   429 }
       
   430 
       
   431 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
       
   432 {\definecolor{rred}{HTML}{C0504D}
       
   433 \setbeamercolor{background canvas}{bg=cream}
       
   434 \begin{frame}[c]
       
   435 \frametitle{Students in CFL}
       
   436 
       
   437 \begin{center}
       
   438 \begin{tikzpicture}
       
   439   \begin{axis}[symbolic x coords={2016,2017,2018,2019,2020,2021,2022,2023},
       
   440     width  = \textwidth,
       
   441     height = 5cm,
       
   442     bar width=8mm,
       
   443     nodes near coords,
       
   444     axis lines = left,
       
   445     text=black,
       
   446     ymin=0,
       
   447     clip=false,
       
   448     hide y axis,
       
   449     axis line style={-},
       
   450     name=mygraph
       
   451     ]
       
   452     
       
   453 \addplot[ybar,style={rred,fill=rred!75,mark=none},text=black] coordinates {
       
   454 (2023,183)
       
   455 (2022,112)
       
   456 (2021,98)
       
   457 (2020,59)
       
   458 (2019,38)
       
   459 (2018,20)
       
   460 (2017,22)
       
   461 (2016,8)};
       
   462 \end{axis}
       
   463 \node[anchor=north, yshift=-10mm] at (mygraph.south) {\small{}Student numbers since the start of the compiler module.};
       
   464 
       
   465 \end{tikzpicture}
       
   466 \end{center}
       
   467 
       
   468 \begin{textblock}{5}(12, 2.5)
       
   469   \includegraphics[scale=0.15]{../pics/cfl.png}\\
       
   470   \hspace{5mm}2021
       
   471 \end{textblock}
       
   472 
       
   473 \begin{textblock}{5}(12, 9)
       
   474   \includegraphics[scale=0.15]{../pics/cfl2021.png}\\
       
   475   \hspace{5mm}2022
       
   476 \end{textblock}
       
   477 \end{frame}
       
   478 }
       
   479 
       
   480 
       
   481 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
       
   482 {
       
   483 \setbeamercolor{background canvas}{bg=cream}
       
   484 \begin{frame}[c]
       
   485 
       
   486 \mbox{}\\[-4mm]  
       
   487    
       
   488 \begin{minipage}{1.3\textwidth}
       
   489 \begin{mybox3}{One comment from this year}\it\small
       
   490   I feel like the module's point is to help us experience what it is
       
   491   like to program very challenging problems, it's not very realistic
       
   492   as in a realistic scenario we would have access to the internet, and
       
   493   other people's code and may collaborate. I feel like the point of
       
   494   the module is taken away due to how the plagiarism and collusion
       
   495   rules are put into place.
       
   496 \end{mybox3}
       
   497 \end{minipage}\smallskip
       
   498 
       
   499 \begin{minipage}{1.3\textwidth}
       
   500 \begin{mybox3}{Another comment from this year}\it\small
       
   501 To prepare students for the C++ coursework better, for example introducing recursion and/or backtracking, because that is a big part of the coursework but wasn't even touched upon in the videos
       
   502 \end{mybox3}
       
   503 \end{minipage}\smallskip
       
   504 
       
   505 \begin{minipage}{1.3\textwidth}
       
   506 \begin{mybox3}{Even another comment from this year}\it\small
       
   507 The coursework is too difficult.
       
   508 \end{mybox3}
       
   509 \end{minipage}
       
   510 
       
   511 
       
   512 
       
   513 \end{frame}
       
   514 }
       
   515 
       
   516 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
       
   517 {
       
   518 \setbeamercolor{background canvas}{bg=cream}
       
   519 \begin{frame}[c]
       
   520    
       
   521 \begin{itemize}
       
   522 \item we reduced the amount of work this year and gave more time for C++ CW
       
   523 \item we recruited TA's for\bigskip
       
   524 
       
   525 installation problems:
       
   526 \begin{itemize}
       
   527 \item Oscar Sjostedt (\texttt{\small{}oscar.sjostedt@kcl.ac.uk})
       
   528 \item Nicole Lehchevska (\texttt{\small{}nicole.lehchevska@kcl.ac.uk})\bigskip
       
   529 \end{itemize}
       
   530 github problems:
       
   531 \begin{itemize}
       
   532 \item Quan Tran (\texttt{\small{}anh.tran@kcl.ac.uk})\bigskip
       
   533 \end{itemize}
       
   534 discussion forum / general problems:
       
   535 \begin{itemize}  
       
   536 \item Ruben Ticehurst-James (\texttt{\small{}ruben.ticehurst-james@kcl.ac.uk})  
       
   537 \end{itemize} 
       
   538 \end{itemize}    
       
   539 
       
   540 \only<2->{
       
   541 \begin{textblock}{7}(9, 8)
       
   542   \textcolor{red}{\Large\bf Could you
       
   543     please spend the next 10 mins to fill
       
   544   out the end-of-year feedback.}
       
   545   \includegraphics[scale=0.035]{thanks.png}
       
   546 \end{textblock}}
       
   547 
       
   548 \end{frame}
       
   549 }
       
   550 
   411 
   551 
   412 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   552 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   413 
   553 
   414 
   554 
   415 \end{document}
   555 \end{document}