Tuesday, September 30, 2014

Extra Blog: calculate();

A few days ago, my mentor assigned make a web application. I programmed my first ever functioning program primarily using HTML and JavaScript using Microsoft Visual Studio 2012. What did I make? A calculator. A calculator that can add, subtract, multiply, and divide two values a user inputs into the program through buttons. Yes, I know, it sounds like a very simple program (and the interface makes it look even more so), but the amount of programming and coding behind it is actually quite complex (from my current standpoint anyways). From creating flexible functions that can calculate the two inputted values and detect which of the fours operation the user wishes to use to getting JavaScript to actually do something when a button is pressed was quite an enormous feat.
At first, from the books alone, I couldn't figure out how to do the latter and have it pass a button ID's from the HTML code to the JavaScript code. I resorted to searching on Google for a solution and eventually found out how to do it on this particular website, http://www.w3schools.com/. As it turns out, I found from my mentor that many programmers and Computer Science majors use that website as a source for help, guidance, and a place to learn different programming languages. There is also a public forum that allows questions to be asked directly to other users on that site for specific questions that may not otherwise be addressed with general lessons.

The simple interface of my calculator. Includes the functions of adding, subtracting, multiplying, and dividing two numbers, checking to see if users entered values or not, and using a resulting value as the first number of input.

This part of the code detects which number button was pressed and displays its value. It does this by looping through the numbers 0 through 9, determining whether the button's ID matches "Button" + the looping number, and displaying the looping number in the 1st Textbox.

The calculate() function I coded that receives 3 values, the value in the 1st Textbox, the value of the 2nd Textbox, and the value of the operation Textbox. Depending on the operation, the function will do the corresponding calculations to the values of the 1st and second text boxes and display the result in the result Textbox. Note that I also included an exception for dividing anything by 0 in order to prevent the program from breaking the laws of the universe and crash.

On another note, my mentor recently gave me two new books on HTML, CSS,JavaScript, and JQuery that she will help to go over with me as we do mentorship hours. On a first glance, these books looked like the ordinary programming books (and textbooks) with a pretty cover and back cover with black and white, boring walls of text that strain the eyes. But when I opened these books up, not only was I surprised at the color, but I was also impressed my the amount of designing done within the book coming from a design editor's perspective. They were relaxing, easy to read and understand, and, most of all, not boring. Honestly, this is probably the best looking educational book that I've ever seen since reading Dr. Seuss over 10 years ago.

Pretty covers usually attract me enough to read the inside text, but the text usually do not the same as much. These book being an exception.

This back cover is very nice. If I was doing some design work as my senior project, I would even consider using this book as a reference!


The most attractive educational books I've ever seen since Dr. Seuss.

I will continue to fine tune my programming skill, in the mean time, I will start learning more HTML and C++ in the coming month.

Thursday, September 18, 2014

Blog 6 - Second Interview Preparation

1.  Who is your mentor and where do they work?

Lily Wu

Works at the County of Los Angeles Internal Services Department, Information Technology Service.

2.  What five questions will you ask them about their background?

What position do you hold in your field and what are you responsible for?

How long have you with this company and in this field of work and what have you done in the past?

What is the company's goal or purpose?

Did you go to college? If so, what did you major in, what did you study in this major, and what level of degree did you obtain? If not, in what ways did you gain experience for your job?

Why did you pursue this career?

What do you think makes a person an expert in your field of work, being one yourself?

What do you think has been the most influential factor that allows you succeed in the work that you do?


Tuesday, September 9, 2014

Blog 5 - Mentorship Reflection

Based on what you have done for your senior project so far, answer the following questions (be specific and use examples).

1. Mentorship question: Describe your experience in how you found your mentorship?  If you haven't found one yet, describe your experience so far in the search of a mentor.

My mentor is my Lily Wu - my mom. Having her as my mentor is very convenient since she lives with me and I talk to her almost everyday. I found this to be very lucky since my interest is in the same field as what she does for work. She was willing to take the time to teach me computer programming and, because of my explanation of the project, she knows my EQ and the goal of this mentorship component - to learn practical skills in the real world that is not regularly provided in school course work. Once she understood these things, she taught me what she does, what is required of programmers in her field of work, how to program, and has given me input on my current EQ.

2. Research question: What has been your most important article you have read so far and why?

The most important article I have read so far is "Computer Programming in the 21st Century: Quo Vadis?" which is a compilation of many writings of authors in the programming field. This article not only pertains directly to my working EQ, "How can an individual become a successful computer programmer in the 21st century?" but it also outlines and summarizes possible answers towards this question. In addition, it also gives me a general direction of what I should study such as 'problem solving' or 'continuous learning.' This article has helped me advance greatly in my senior project. Therefore, I feel that this is the most important article I have read so far.

Saturday, August 30, 2014

Extra Blog: alert("Hello world!");

This past month, I have worked with my mentor in learning the structure of LA County's Internal Services Department (ISD), the Financial Reporting System (FRS), and learning how to program in JavaScript. Learning about these things gives me assurance that it was a good decision for me to choose Computer Programming as my senior topic. I found that the work I did and the subjects I will, and have already, start studying are very interesting. I've always enjoyed using computers, applying logical thinking, and creating things that work, so there couldn't be a better choice than Computer Programming. 

Below are some pictures that represent what I have done so far.


The ISD Logo.

The book my mentor goes over with me to show me how to program in JavaScript.
As with learning any other language, I displayed a message saying the iconic "Hello world!" with the code:
alert("Hello world");

My current working EQ is "How can an individual become a successful computer programmer in the 21st century?" Through my research these past weeks and from my study of JavaScript, I have come up with several answers that I think approaches the best answer for my working EQ. The following are my current, possible answers:

  • Having the end-goal in mind during programming
  • Continually learning new skills/knowledge as technology changes
  • Good communication/responsibility with those who work with you
  • Have good code design/structure
  • Dedication to learn/practice coding over a large period of time
  • Enjoy Computer Programming 

At the moment, I feel that the answer, "Continually learning new skills/knowledge as technology changes," is the most reasonable and strongest answer out of the ones I have made so far. This is because my mentor is constantly,and thoroughly, learn new programming languages and apply them in the workplace. She said that being in the field of work is a "Life-time learning experience" and that one would need to study out side of the regular 8 hour work day. Companies and organizations, such as the Justice Service within the ISD that my mentor works in, who are based around the work of programmers often send their employees to classes to learn a variety of new subjects such as working efficiently or how to operate under a certain kind of system. In addition to classes, countless amounts of new programming books and internet articles are constantly being published with the specifics of the latest versions of programming languages and many instant messaging boards are constantly exchanging help to those have problems. Also, many times in programming, one can even copy and modify a program that someone else had made. This become a learning experience in itself of new information. 

TL;DR

This explanation can be summed up with something Clint Shank, a writer of technological subjects, once said:


"Technology changes fast. Don't get left behind."




Wednesday, August 27, 2014

Blog 4: Interview Preparation

1.  Who do you plan to interview?  Why?

Alan Wu

Has a wide variety of knowledge in science, engineering, and computing and has a Bachelor's degree in Computer Information Systems. Knows co-workers who come from technological backgrounds.

2.  You have to ask 5 questions.  What additional questions do you plan to ask?  

  • From your past experience, how should I approach Computer Programming in order to achieve mastery of this topic?
  • What are some ways I can apply the knowledge of Computer Programming in the real world?
  • There are numerous aspects of programming such as knowing syntax, having logical thinking, and keeping things in certain organizing formats. How might I go about learning all of these specific details of programming that may not be taught though books or internet articles?



Thursday, August 21, 2014

Blog 3: Topic Choice and Working EQ

1.  List your topic here: 

Computer Programming

2.  Write a question that helps to focus your research this month.

How can a person become a successful computer programmer in the 21st century?

3.  Post the working bibliography (WB) on the right hand side of the blog and share it so anybody can view it.

https://docs.google.com/spreadsheets/d/1gbpYaCiCrApm52MtwhHtHRA--ZTPvj4OTNjefpiYfuU/edit#gid=0

Monday, August 18, 2014

Summer Mentorship Component

1. (Know) Using google doc (drive) link a log of specific hours and a description of your duties:

https://docs.google.com/spreadsheets/d/1pk06m750zrh1IsLXwaHWU21neVqb5LkzlIeC5KYTGr0/edit#gid=0


2. What is the contact name & number of where you volunteered?

  • Contact Name: Lily Wu (Senior Application Developer)
  • Number: (909)-241-3771

3. (Need to know) What questions were raised because of the 10 hours of experience?  List them.

  • How does one determine the steps needed to be taken and in what order before starting a project that use the Project Management Methodology (PMM)?
  • In what way can a programmer use code to accurately meet a customer's requests?
  • Are they any specific guidelines or formats one must put their code in?
  • What is the most efficient way to train and inform a new employee about how everything works within the system?

4. What is the most important thing you gained from this experience? Why?.

The most important things I got from this experience were obtaining the general knowledge of the type of work I am getting into and learning the mindset one must have in order to fully succeed in the programming world. The general knowledge I received is important because it helps to show me what to expect in the following year and helps me to prepare myself for the work I will be doing. Learning these during the 10 hours of mentorship has allowed me to also gain the type mindset I must have to prepare myself mentally for what is to come. I learned that the those who succeed in the programming field of work must pay close attention to all details, no matter how small, within the assignments and projects they do. Therefore, in order to truly benefit and learn from this mentorship, I have given myself a similar mindset and will approach the upcoming ideas and concepts from a detail-oriented perspective.

5. What is your senior project topic going to be?  How did what you did help you choose a topic?  Please explain.

The topic that I will be using for my senior project will be Computer Programming. 

The 10 hours I have completed with my mentor helped me to further solidify my previous choice of Computer Programming as my Senior Project topic because, not only was the 10 hours interesting and fun, but I also feel that this topic will help me in my future studies as I am planning on majoring in Computer Science and planning to have career related to computer programming.