Luka's Blogs

Blogs

As part of our work at Shodor, apprentices are required to write blogs describing our activities for each day that we work at Shodor. Below you can find collapsible sections with my blogs from each block.

The Fall section is for the blogs written from October 8th, 2016, to January 21st, 2017. The Spring section is for the blogs written from February 4th, 2017 to April 22nd, 2017. The summer was split into four different blocks. Block One covers the blogs written from June 19th to June 30th, Block Two from July 10th to July 21st, Block Three from July 31st to August 4th, and Block Four from August 7th to August 18th.

Fall

Oct. 8th, 2016

Today was our first day of work at Shodor. We went over the apprentice handbook and covered the rules and regulations of being an apprentice. It involved a lot of sitting and listening to a somewhat boring lecture, but the information was important, and we were assured that this would be the most boring of all of the classes we would have. I was also pleasantly surprised to find out that one of my good friends, Naylea Jacobo, was also starting the apprentice program here. I'm excited to work with her, and with all of the other apprentices. When I came here in the summer for the Shodor Scholars Program, I really enjoyed what I did and the skills we learned, and I'm very excited to continue that work in the apprenticeship program. I'm so glad I got accepted, and I'm really looking forward to my future here.

Oct. 15th, 2016

Today we learned more about working at Shodor and the rules and expectations that have to be followed. Ron Broadnax gave a presentation on office ethics and behavior, which he had previously given at the Shodor Scholars Program. It was very funny and informative. We talked about the reliability of sources and did some Google searching about it. I learned that when you Google the mass of the moon, the Earth, or Mars, the answers you get will vary slightly, because of how large the numbers are, and whether they are truncated, rounded, or written in scientific notation. It was interesting to see that the websites that we trust may not have accurate information, and two "reliable" sources may share conflicting information.

Oct. 22nd, 2016

Today, we started work in Excel. We had done some work with this over the summer during the Shodor Scholars Program, but none as in-depth as the work we did today. We did a coin flip experiment, where we generated a random number in one cell and called the results of that number either 'Heads' or 'Tails' depending on whether the result was greater than one half or less than one half. We repeated this experiment for different amounts of flips so that we could compare the differences in our results between ten flips and one hundred fips. The results for one hundred flips were closer to having an even distribution of heads and tails than the results for ten flips because of the sample size. We also talked about pseudo random numbers today. Since computers cannot generate truly random numbers, they use pseudo random numbers in an algorithm to generate a "random" number. This is how functions like RAND() work in Excel.

Nov. 5th, 2016

I did not attend the session on Nov. 5th because I was taking the SAT. However, I did follow along with the documentation by myself at home. There were many new terms and concepts covered this week, including circular references, G.U.I., visualization, and developer. We continued to work with Excel and developed our skills further, learning how to make a scroll bar in Excel and how to implement it with data. We also learned about "If, then, else" statements, which are examples of what's called branching or nesting. This was an interesting class to look over and follow along with.

Nov. 12th, 2016

Today we talked about the equation Have = Had + Change, or, in simpler terms, what you have is what you had plus the change that occurred. We discussed how this model can be applied to many different situations in different branches of learning, such as programming, physics, population demographics, and almost anything else you can think of. We also began to work with system models in Vensim today. I was already familiar with Vensim PLE through the Shodor Scholars Program, but it's been a while, so this was a good review.

Nov. 19th, 2016

Today, we started working with agent models, as opposed to system models. I honestly prefer working with Vensim to AgentCubes, but the interface of AgentCubes is much more intuitive and easier to work with. We first modeled simple random movement in the world, which was very easy, and I would have been bored were it not for helping Naylea, who was having some struggles. Then we created an SRI model and we had more creative freedom there. My computer had some "technical issues", AKA, it froze and the webpage had to be reloaded approximately every three minutes, which was tiresome and frustrating. However, my model turned out very nicely despite the issues I was having, and I was really proud. None of the skills we covered today were entirely new to me, but it was a nice review. I'm super excited to come up with a good idea and start working on our projects next class.

Dec. 3rd, 2016

Today, we covered some more about agent models in AgentCubes, specifically with regards to hill climbing and diffusion. It was another good review of work that I've done before; it wasn't all that challenging, but technical difficulties did interfere rather often. Then, we started working on our projects. We will be working in pairs for this project, and I chose Naylea as my partner. She was, however, absent today due to taking the SAT, so I ended up coming up with an idea and starting the project by myself, which was both fun and stressful. I decided to model the progression and graduation of students in high school, from entering as freshmen to graduating as seniors. First, I wrote out my story for AgentCubes, and sketched the diagram for Vensim. I created the diagram in Vensim, which was fairly easy, but I did run into a couple of problems related to my equations. I started on the AgentCubes model, but due to my computer deciding to quit on me, I didn't have a lot of time to work on it, and only managed to create the first two agents. Next week, Naylea and I will most likely finish this stage of our project, which is exciting. I enjoyed the amount of creative freedom working on this project gave me.

Dec. 10th, 2016

Today we continued to work on our projects for the entire day. My partner, Naylea, was absent again today, which means that up to this point I've done this entire project by myself. However, it's been going pretty well. Today, I cleaned up my Vensim model, fixed some errors, and made some minor modifications. I finished my agent model to the point my original story covered; I'll have to talk with Naylea when we meet about any modifications we want to make as a group, but for now I'm essentially done with that. I also began work on the website. I made a basic HTML skeleton for it based off of our index.html setups, and put in a basic project description and screenshots of both of the models. I was particularly proud that I figured out how to input an image as a link and have the computer automatically download a file from that image. Naylea and I have planned to meet on Monday to go over our project together and give her some opportunity to contribute. I worked hard and fairly consistently today, and I got a lot of solid work done. I'm excited to present next weekend.

Dec. 17th, 2016

We did not get a chance to present this weekend. No presentations were done, which meant that we had a chance to work on our projects, which was certainly appreciated. Naylea was here for the first time since we began working on this project. We worked well together and got a lot of work done. We had to do a lot of editing on the Vensim model because I had some conceptual errors. I'm starting to regret making a time attribute part of the system model, because it hardly ever works, and the time arrow has developed an annoying habit of disappearing. I think, however, that we are at a good point in our project despite the difficulties, and we'll only need to meet up once more to work on a script for our presentation. Our website looks good and I'm proud of what we've done.

Jan. 21st, 2017

Today Naylea and I finally got a chance to present our project! We've been working on this project for a month and a half now, and it is definitely a relief to be finished with it. Our presentation went fairly well. We were somewhat unrehearsed, which meant our delivery wasn't quite as professional as I would have liked, but I was proud. I get very anxious when speaking in front of people, so presenting is always nerve-wracking, but it's good for me to overcome my anxiety and confront these fears. Naylea spoke about our AgentCubes model, I spoke about our Vensim model, and we both helped to answer questions. Several questions were asked, some of which were difficult to answer, but I think we handled it well. I could have improved my presentation by standing up while I was speaking and concentrating on speaking more clearly, slowly, and loudly. Our project could have been improved by fixing our time problems and making the models more similar to each other, possibly by incorporating into the agent model different reasons for students to leave the school. In addition, there were some aesthetic choices that made some parts of the model difficult to understand. All in all, I think we did a good job on the project, worked well together as a team, and learned a lot.

Spring

Feb. 4th, 2017

Today we began learning about coding and programming concepts. We started working with Javascript in Atom, but the concepts we're covering are general and could be used to apply to any programming language. Over the next month we will work on transforming a predator/prey model into a disease model and learning about programming through our work. I very much enjoy programming and am excited to learn more.

Feb. 11th, 2017

I was sick today and wasn't able to attend class. I worked to make it up on my own time. This lesson involved working more on programming and changing the predator/prey model into a disease model. We learned about different programming concepts and how to implement them in our code, and practiced making changes and predicting, observing, and reflecting on what happened.

Feb. 18th, 2017

Today we learned more about programming concepts, through transforming a predatory/prey model into a disease model, like we've been doing for the past two weeks. We learned about using linters like ESLint to find and correct mistakes in code syntax, defining and calling functions and variables, and using square brackets to make arrays. We changed the eating function in the original model to an infecting function, where the sick people removed the healthy people and created sick people in their place when they came into contact. I learned a lot about programming concepts today, and worked efficiently.

March 4th, 2017

I wasn't able to attend class today because of a prior commitment, but today we began work on our spring project, which involves taking either our disease model or the predator/prey model we created and changing it into a model of a forest fire using the programming concepts and skills we've been learning over the past month. My partner Chris Parker began work on this project while I was absent. I'm excited for this project and for the chance to practice coding and enhance my programming skills.

March 11th, 2017

Today we continued working on our forest fire model project. We had some moments of confusion over the Javascript syntax and how to best edit it, and we ended up accidentally breaking our model more than a few times. However, we worked together well and made some good improvements on our model. I think we're almost there and although we'll have some more work to do to finish up next week, we're in a good place. I'm proud of the work we did today, especially because neither of us had prior experience with Javascript.

March 18th, 2017

Today we finished and presented our project! In the morning, we worked on making our finishing touches so our model was perfect. Last week, we ended in a good place so we didn't have too much work to do. Our fire model had a wind component added so that the fire would only blow in a certain direction depending on the intensity of the wind. In the afternoon, we presented our project, which went fairly well; I struggle sometimes with presenting and public speaking skills, so this was, as always, good practice. I think our project was good and I'm proud.

April 1st, 2017

I wasn't able to attend class today because of a prior commitment, but today we began working on parallel computing. Parallel computing is when multiple computers, nodes, or cores work together to solve a problem. Parallel computing is efficient because more work can be done in less time, but it requires communication between each computer, which can take time and processing power. Many different areas of life involve parallel thinking or parallel computing. We did a coin flipping activity where we compared the number of coins flipped by different numbers of serial and parallel workers, and found that parallel workers were generally able to flip more in shorter time periods.

April 8th, 2017

Today we continued working on parallel computing. We looked at different careers and how High Performance Computing (HPC) could be used in them. The career I chose was nuclear engineering, where HPC is used for simulations of nuclear experiments that require high processing powers. We compared different supercomputers around the world through the Top500 list, and learned about Shodor's mini supercomputer, LittleFe. We also did an activity where we "shopped" for our own parts to build a supercomputer with a $3000 budget. This activity helped us see what parts of a supercomputer are essential and how expensive or inexpensive they can be, depending on the different components.

April 22nd, 2017

Today was the final Saturday for our work as apprentices. We completed our learning about parallel computing through work with BCCD, or the Bootable Cluster CD, an operating system that connects different computers to teach about parallel computing. We used command line interfacing to do this, which was very interesting, and we were able to connect our computers and perform tasks with processing power one computer wouldn't be able to do. I left at 12:00 today because I was feeling sick.

Summer Block One

June 19th, 2017

Today was the beginning of my first block of the summer. During our first block, we have a variety of projects to complete, as well as occasional ODAA work. I will only be able to attend the latter half of the day during this block, but I'll be making up for lost time by attending the second week of the third block later on this session. Today, I began working on our main project for this block, which is to create two models and a website to simulate a scenario. The scenario I chose was the life cycle of a butterfly. I wrote out my high level design (HLD) document outlining the work I'll be doing on this project.

June 20th, 2017

Today I continued working on the main project for this block. I began working on the agent model. I created each agent and shape in the world and began to program their actions. I also began working on the system model, but didn't make much progress beyond creating the variables. Finally, I did the image manipulation and resizing work in Gimp, which I will upload onto my website soon.

June 21st, 2017

Today I continued working on the main project for this block for the first hour. I programmed the actions of the eggs, foliage, and caterpillars in the world, setting up the eggs to age and occasionally die, the foliage to attract the caterpillars, and the caterpillars to hill climb the foliage "scent". Once that was finished, I began working on the responsive website video tutorial. I will upload that onto my website as well when I finish it tomorrow.

June 22nd, 2017

Today I continued working on the responsive website video tutorial and finished it. It was a great way to review some HTML and CSS skills and learn some new ones as well. I also worked on the main project for this block. I worked on the Vensim model and got a significant way through it. Finally, I began working on the HLD document for my website, which I will be editing and personalizing over the summer.

June 23rd, 2017

Today I continued working on the main project for this block. I almost finished my Vensim model and just have to add finishing touches next week. I worked on my AgentCubes model and made some significant progress. I also worked on my logos and icons in Inkscape, my website high-level design document, and my first block project website.

June 26th, 2017

Today I continued working on the main project for this block. I finished my Vensim model and nearly finished my AgentCubes model, although I was having an error I'm not sure how to fix where my agents started changing back into caterpillars after changing into pupas so I'll have to ask for help tomorrow. I also worked on my website HLD document and created a sketch in Inkscape of my plan for my website.

June 27th, 2017

Today I finished working on my models for the main project for this block. I made finishing touches on my Vensim model and completed my AgentCubes model, fixing the error from yesterday. I created a counter agent in my AgentCubes model in order to create a graph of the agents. I also worked on my website HLD document and created a favicon in Inkscape with an outline of my glasses.

June 28th, 2017

Today I finished my website HLD document and began working on writing the code for my website. I'm rewriting the HTML and CSS from scratch, using references from the Rocket Design project, my old website design, and general knowledge. I plan to make my website responsive, meaning that it would have different layouts and functionalities depending on the size of the window and whether the site was viewed from mobile, tablet, or desktop.

June 29th, 2017

Today I worked on my website HTML and CSS. I rewrote it from scratch using my high level design document as reference. As of the end of today, my website has a header, a navigation bar with a dropdown menu of Shodor resources, a two-column main section with information about me and about Shodor, and a footer section with credit to me and Shodor staff. The only changes I have to add are collapsing my menu section into a clickable icon with a dropdown menu and changing the main section to be one-column on a mobile-sized view.

June 30th, 2017

Today was the final day of my first block of the summer. I had workshop documentation duty for Joel's Website Design workshop. In the workshop, the students learned how to connect remotely to Shodor using Cyberduck and code a number of website features using HTML, CSS, and JavaScript, including a button that moves when moused over, a dropdown menu, and forms. It was very interesting to see the workshop and I enjoyed my documentation duty today.

Summer Block Two

July 10th, 2017

Today was the first day of my second block of the summer. During this block we will be learning about and working with the PHP Hypertext Preprocessor. In the morning we had an introduction to the rules and operation of the summer program. After that, we worked on a research project where we searched out different syntax for JavaScript, PHP, and one other language of our choosing. I chose Python for this project. After lunch, we began to work on a PHP coding project. This is unique from the other coding projects throughout this program because we began our program entirely from scratch. We built a simple coin flipper model using PHP. After that, we continued working on our syntax research projects until the end of class.

July 11th, 2017

Today we continued working with PHP. In the morning, we worked on our syntax research project for a while. Then, we created another version of our simple coin flipper model that tallied the percentage of heads and the percentage of tails compared to the total number of flips. We began to work on Krista's PHP coding projects. The first project involved generating and changing the page background to a random hex code. We worked on this project for most of the afternoon. I managed to generate a random hex code, but not change the background color to it.

July 12th, 2017

Today was another day of work on PHP. In the morning, we worked on our random hex code generator project, which I successfully finished. Then we continued working on our coin flipping model. We talked about how to merge HTML and PHP and the difference between embedding PHP in an HTML file, which is a valid way to do it but not the Shodor way, and rendering HTML using a PHP file, which is the way we will typically use here at Shodor. In the afternoon, we had time to work on Krista's projects. I wrote a "Dane Joe" model that switched the initials of the user's inputted first and last names. Then I began working on a dice statistics model that will simulate the roll of a die and generate charts of the sum of the output. I created the die rolling model, but still have to work on the charts.

July 13th, 2017

In the morning today I had reception duty, which was profoundly uneventful. It was my first time doing reception, and I received one phone call, which turned out to be a wrong number. I used the time to work on my programming syntax guide project. In the afternoon, we had time to work on Krista's projects. I worked on the dice statistics project and began work on the background color selector project, where the user is given a dropdown menu of colors to choose from and the background changes to their selection. It also must store their choice in cookies so it would stick if they were to revisit the page. I created the selection menu.

July 14th, 2017

Today I continued to work on Krista's projects. I worked on the background color selector project to the point where it applies the background color the user chooses to the website. I worked on saving this value in a cookie so the color would remain the same when the user revisited the page. Then I did the XML blog project, where I used a PHP loop to render blog entries from an external XML file. In the afternoon, I worked on the dice statistics project and went over the dynamic web pages demo that I missed yesterday morning because I had reception duty.

July 17th, 2017

Today I worked on Krista's projects in the morning for an hour and fifteen minutes. I finished the background color selector project and successfully stored and loaded the cookies. I finished the XML blog project by loading all of the entries through a foreach loop. Then I began working on the calendar generator project. After the break, Ernie taught us about PHP form validation, which is used to make public PHP forms secure. I had to leave at 12:00 today for an appointment.

July 18th, 2017

Today I had documentation in the morning for the Explorations in Engineering workshop. I enjoyed listening in on this workshop a lot since I love engineering. In the afternoon, I worked on my dice statistics project for a while, before Jennifer met with all the apprentices for a presentation on interviews. She talked about the importance of preparedness, presentation, and first impressions, and gave a list of common questions to prepare answers for. This was in preparation for the mock interviews we will be conducting tomorrow. After the presentation was over, I continued working on my dice statistics model and began updating my portfolio page to reflect the work I've done over the summer so far.

July 19th, 2017

Today we did mock interviews with Jennifer and Levi in preparation for future interviews. In the morning, I prepared for my interview and worked on my dice statistics project. The mock interview went well. I felt prepared and Jennifer said my answers to their questions and the questions I asked were good. After my interview, I continued working on my dice statistics project. After lunch, I went back to my random hex code generator project and realized I had made a mistake in my program. Instead of generating one random hex codes and echoing it in the background color and in the body text of the page, I generated two separate random hex codes. I reworked my code to fix this problem.

July 20th, 2017

Today I continued to work on Krista's projects. I finished my dice statistics project. I set it up with a dropdown where the user could choose from one, two, or three dice to be rolled, and a table would be generated from the results. I used functions and a switch structure to create this effect. I began working on my calendar project but wasn't sure where to start. In the afternoon, I had my second block meeting with Dr. Panoff. I left early at 3:20 PM today due to not feeling well, but I should be able to come tomorrow.

July 21st, 2017

Today was the final day of my second block of the summer. In the morning I reworked my dice statistics project to allow user input to choose how many dice to rolls and how many times to roll it. I had to rethink the entire project and I'm glad I did because it's much more efficient and user-controllable now. I used foreach and for loops as well as if statements to achieve this. I continued working on my calendar project and generated two select drop down menus so the user could choose the month and the day of the week for the first day of the month, as well as a table. I wasn't able to finish this project. In the afternoon, I had documentation for the Explorations in Engineering workshop.

Summer Block Three

July 31st, 2017

Today was the first day of my third block of the summer. I was unable to attend last week, the first week of this block, due to a prior commitment, but I will be attending this week and both weeks of the last block. In the morning today I reviewed the video recorded on the first day of last week where Ernie went over databases and MySQL and began to work on the Sequel Pro work. I left at 11:30 today because I came down with something earlier this week and felt very tired today. I hope to be able to sleep it off tonight and return tomorrow and be fully functional for the rest of the week.

August 1st, 2017

I was feeling much better today, luckily, and was able to return to Shodor and make it through a full day. In the morning, I began working on my MySQL syntax guide, and finished the first section of it. I worked with a People table generated from information about Shodor staff, interns, and apprentices, including first name, last name, favorite color, shoe size, and the results of a coin flip. Using this table, I learned about the operation of MySQL and how to retrieve, count, sum, and average values from a table using it. In the afternoon, I reviewed the video recorded on the first day of last week where Ernie went over how to create an E-R diagram, and created one for my dice roll database project.

August 2nd, 2017

In the morning today I reviewed the video recorded on Tuesday of last week where Ernie went over how to use Atom to write SQL for the table creation of the relational database that he previously showed us how to create. I followed along with this and built a relational database in Sequel Pro that linked the 'id' field from one table to different fields on other tables. In the afternoon, I revisited one of the projects from the first block, the main project where we had to build a webpage to showcase two models that we had built to simulate a scenario of our choice. During the first block, due to only coming for half of the day, I was unable to finish my website. I worked on it today and am planning to build a dynamic webpage using PHP for it. I also created a dynamic webpage for my blogs that utilizes PHP to load different sections of my blogs.

August 3rd, 2017

In the morning today I reviewed the video recorded on Tuesday of last week where Ernie went over how to use inner joins to display information from multiple tables in conjunction in Sequel Pro, using the relational database I built yesterday. I then completed the second day of my MySQL Syntax Guide, which was the end of the project, using the relational database. I worked on my dice roller database project, which uses PHP to load user inputs into SQL. I went through the W3Schools tutorial on incorporating SQL into PHP. I made this work smoothly with my dice roller project to the point where it uploaded the first name, last name, favorite color, and shoe size that a user input to my database, and displayed the information on the screen. After lunch, I worked on my website for my first block project, and finished both the agent model and system model section. I also made updates to my Vensim model for that project. I had to leave at 3:00 today for an appointment.

Guest Speaker on August 4th, 2017

Today in the afternoon Rene Daughtry, the Lead Project Manager at Cisco, came to speak to us. His presentation lasted an hour and a half and covered a variety of topics related to the professional environment and work at Cisco. He began by talking briefly about a number of network-related terms and concepts and how the internet has evolved over the decades from simple routers connecting two nodes over a limited region to a vast IoT, or Internet of Things. He then expanded on information about the professional environment and ways that we can present ourselves to make sure that we come off well to potential employers. He had a question and answer session where he discussed the technical definition of a robot, a summer volunteer program offered with Cisco, and how schools or potential employers will look into your web profiles, among a variety of other topics.

August 4th, 2017

Today was the final day of my third block of the summer. In the morning today I worked on my dice roller database project and set it so that the results of the dice rolls, along with the position and the roller's id, would be sent to the database in Sequel Pro. I also updated the aesthetics of my website so that it looks and functions better. At 11:00, the three apprentices for whom this is the last block (Chris, Gustavo, and Divya) gave presentations on their favorite projects from the past blocks. They all did wonderful jobs. After lunch, a guest speaker came. When he finished, I continued to work on my website and updated the HTML and CSS of my portfolio page to match the look of my home page. I also began to work through my dynamic blog page and update the aesthetics to match my home page as well. I didn't completely finish with this but it looks more cohesive as a whole already.

Summer Block Four

August 7th, 2017

Today was the first day of the fourth block of the summer. During this block, the apprentices will be working on various projects from throughout the summer. Some apprentices will be making up the first block, some the second, and some the third. I have work to complete from each of the three previous blocks. In the morning today I finished updating my blogs to match the aesthetic of my website and began to work on my Block 3 libraries project using Bootstrap. I also made an improved version of my background selector project that allowed the user to choose from a wider variety of options, as well as another program that allowed the user to input any valid hex code to set the background color to. In the afternoon, I had documentation for the Shodor Scholars Program.