DDM
Freshmen Year DDM
When I first started creating my DDM website, I wasn’t exactly sure where to start. I didn’t know any of the bands listed and nor did I know which to choose. That hasn’t exactly changed but I was able to pick one of them. I ended up choosing Arcade Fire mainly because it simply seemed the most appealing to me out of all of my options.
I personally started out with styling the website so that I could get a good overall idea of how it would look in the end, sort of like a storyboard which I had opted not to do. Styling was somehow able to take up an entire day of my work. Once I was finally finished with this I was able to get to the actual website half of the website. On my first day of working I was only able to successfully complete the homepage and the styling. Things did get much easier once I was finished making my website’s CSS rules though.
On my second day of working on this website I was able to complete the rest of the required pages. Creating these pages went by surprisingly quickly and the only thing I really had trouble with was the albums page. This wasn’t necessarily difficult, it was just really tedious. The members, videos, and resources pages were relatively simple though. I’m rather proud of how my website turned out and as a small touch I even edited the band’s logo to match my website’s color scheme.
In my website I made sure to use all required tags such as images, lists, iframes, etc. I put an h1 element at the top of every page and wrote a title to describe the page into the tag. For tags like lists I had to insert an ordered or unordered list and nest li tags in between them for each element. This became a really fun process when I made the albums page. When I added images I was required to add attributes for the file location of the image and add alternate text for when the image fails to load. With each of my buttons to separate pages I had to insert hyperlinks into the different pages I created and the official Arcade Fire website.
I feel as if this website might have been the best website I’ve created this year so far, and I’m relatively happy about that. I hope that my websites progress and become better in future years; as there were still a few things that I wanted to do with my website but could not as of yet.
Sophomore Year DDM
Over the process of making this website, I feel like I accomplished a lot. This very well might be my favorite website that I’ve done this year. I might just be saying that though, as I say that about a lot of my websites when I finish them. In the beginning I struggled to think about what I should write about until I finally got an idea. I decided to write about two characters that my classmate Nadeem and I came up with back in 5th grade. Two Roblox Guests named Jack and Gesta.
I got very ambitious with my story itself. I ended up adding 21 endings in total with a lot of branching paths. I spent about an hour just planning the story and a lot more time writing it. My planning is displayed below.
When I actually made my website, I prioritized my header first. I used rows and columns to eventually get the design that I wanted for it. This was also where I decided on my color scheme which I based on my old Storybook website with bright colors like yellow, orange, and red. I also added a list of endings below it that I had future plans for. I ended up very pleased with my header even if it doesn’t contribute much to my website.
After this I added the layout for my paragraph and image. I planned to have two options per paragraph and with each option the text and image would change. I sadly did not get to make all the images for my DDM but I still got all the functionality working.
To program this I wasn’t 100% sure how I would get things to work. I had a few ideas but I eventually decided to add a list full of other lists. I have a function that presses whenever you press a button. This function changes one variable with the original list into one of the lists inside of it. Each list has one block of text, two other lists for the options, the text for the buttons, and the link to an image. These attributes are added to the variable and website elements whenever the function is run and it resets when there is an extra list element for the endings.
This extra list element mirrors the number of the ending. I have a list of false values that change to true depending on what number you get for the ending. These values change the class of the ending icons to an animated colored icon for every ending you get.
Overall, I may not have 100% finished my images, but I’m very proud of how this entire website turned out. This very well might be the best thing I’ve made in Computer Science and I’m glad that it is because I was so ambitious with it from the beginning.
Junior Year DDM
In writing my Crossword DDM. I started off by adding the required classes and I read up on what their functionalities should be. The first class I added functionality to was the Crossword class where I added a constructor and created it in the main class. I then went to the Utils class to add a method that read through the file (with the answers, clues, and data behind their locations) to create empty spaces on the currently blank board array corresponding to the data pulled. This had the board fully built.
I then moved onto writing the Clue class. In this class I called the Utils class again, but this time it was to find all of the clues and insert them into an array. After this I began adding user input. I made a switch statement that checked if the user wanted to make a guess, display all clues, display a specific clue, erase an answer, submit their answers, or exit the program. I was able to fill in the clue options, but next I had to make a guess method.
In the Crossword class, I created a method to allow the user to make a guess. It iterates through the array until it finds the location specified. It then checks which direction to move in, and if in that direction there are the same amount of empty spaces as there are characters in the guess then it would input the guess into the array.
I now needed to add an erase method. When I did this, I used a temp array that had all empty spaces. It checked which area the user was selecting in the array, and took the exact empty spaces of the temp array to import into the board array.
Lastly, I needed to add a submit method. I used this same temp array to find all the numbers of the words submitted in my final array. It goes through the entire array and finds these numbers. Once the numbers are found it searches in their direction to check the letters in the words following. If these are all the same then the program returns true, tells the user they won, and quits the program. If the user just selects exit it also quits the program. I then went through and wrote all the comments needed for someone unfamiliar to get a rough idea of what the methods do.
This program challenged me to use a lot of logic. There were a lot of problems to account for and solving them was like piecing together a puzzle. I felt like this was a genuinely interesting program to write and I’m happy to have gotten it fully working.