Posts

Showing posts with the label Atom

Home Stretch

Image
It is officially the last week of career development at The Iron Yard and our prototype, even stretched, is complete! Today Kelly and I review the presentation, practice it, and film tomorrow during rehearsals. October 25th is demo day and we are prepped, practiced, and ready to go! I am very proud of what we've been able to accomplish in such a short amount of time! Over the next few weeks I will continue to work with the Center on implementing our prototype and then continuing to maintain it over time. The experience I've had working with them is invaluable and I am absolutely grateful at the opportunity to work with the community and build something that will help sustain and grow the LGBT Center of Raleigh. I am already looking forward to the lessons I will learn going forward. I anticipate a trial period that will require changes to our design. After hearing feedback from the community, volunteers, and members I anticipate a lot of excitement but certainly items tha...

From Sketch to Prototype

Image
After spending a considerable amount of time doing market research, analysis, client feedback, community polls, and even a SWOT analysis of the current site Kelly and I were able to move from a rough sketch of a redesign to a cleaned up mockup all the way to a high fidelity prototype! It is still a work in progress but we are able to code in HTML and CSS a functional mockup to display our redesign. We used tools along the way to keep track of our progress like Trello as well as Balsamiq to complete our sketches. Our prototype is available on Github at  https://github.com/victoriarainc/lgbtCenterofRaleigh . Kelly was able to find a Bootstrap layout called Modern Business that implemented a lot of the styles we had in mind for the site. It is already responsive, much more modern, and introduces clean navigation throughout the site. The prototype is still in progress but we hope to have it completed by next week!

Routers: The Comeback

Image
As we've progressed further into React I am relearning how to accomplish some tasks that I knew how to do in Node but is done a bit differently now. For example, routing is not a new concept and is something I have done before in previous projects but React handles routes a little differently than Node. Fortunately, both are Javascript so nothing is radically different. Inside of the index.js file I've placed this BrowserRouter which I imported at the top of the page. I then used the syntax I found from the documentation to make a list of endpoints I wanted. The most simple route, the root path, on the bottom to allow the file to read every preceding path as well. The first path here is a dynamic route meaning the :id can change but still render the same layout. I've accomplished all of this before but I did get quite stuck on figuring out where to put my code in React. After enough trial and error I finally moved it into the right spot, linked the component files, a...

Code Snippets

Image
I have no idea if this is the best approach to a project but I'm implementing the MVC methodology to this web app that I'm building. As in, I'm first going to build as much of the model as I can then as much of the views as I can before working on the controller. As I mentioned yesterday, what I do know is that I will need two schemas for this project - one for the snippets and one for the users. I will be using a noSQL database because I already know how to use Mongoose to connect Mongo to my Node application. One trick I knew I would have to add in order to 'link' the two collections in my database is on line 15. I knew I would have to give each snippet a way to connect to its owner in order to only display that owner's snippets. This probably would have been easier to do in a SQL database where tables have a bit more structure and can include foreign keys to reference other tables. However, I wanted to use tools I have already learned how to use to accom...

SQL Equals Spreadsheets

Last week I learned about Mongo - a NoSQL data structure. This week we've covered the opposite. SQL is much more structured and rigid but does allow for an 'easier to organize' approach. More time and thought has to be put into a table's creation. Extra data can be added after the fact but it is easiest to have all of the data you know you want to collect ahead of time. Basically you're turning your raw data into a spreadsheet. That is, SQL is great for data that already exists and needs to be organized.  Unfortunately most of this happens behind the scenes and is executed in the command line. That means I really don't have any images to share. Even when turning in my assignment I had to export my raw data into a file and upload that with a README file explaining what I did to achieve that success.  Tables are just organized data and can be joined to filter out needed information. Those queries look something like this:  SELECT title FROM todos WHERE com...

Model View Controller (Rinse and Repeat)

Image
There seems to be a lot of debate around what Model View Controller (MVC) is. After almost 48 hours of discussion, intense Googling, and furious debate I believe I can comfortably say that MVC is a way to organize your code. To compare, there are dozens of ways to organize a craft room. On top of those dozens of ways you could think of to organize your stuff - there are overarching theories and methods to help. I've read articles on the psychology of organization and popular methods such as bundling your stamps based on theme versus month of the year you would use it. MVC is a method of organization for programmers. Keep in mind a lot of the implementation is dependent on the project itself. Also, a programmer's code is personal and nothing beats methods that work for that programmer. With that in mind, MVC attempts to propose an ideology to follow. Model can be a folder to store sets of data and any logic used to filter through that data. View's purpose is to hold any vi...

Modules, Packages, and Endpoints, Oh My!

Image
As I dived into learning back end development there have been a lot of concepts thrown at me at once. There is a certain amount of information about how the web works (sending and retrieving information) that is helpful to learning a backend language. There is the actual backend language to learn including unique commands and syntax. There are also tons of packages that have various purposes. Each aids in different tasks that execute code differently. Think tools in a toolbox. They're all tools but each one does a unique task. After those packages are installed in your project they still need to be required. Once they are required, they still need to be turned 'on' and that is my boilerplate code. Then the real code happens. The logic. The problem solving. Code really is a puzzle and I find myself stuck on the last piece all the time!

Oh What A Week It's Been!

Image
If you haven't heart already - The Iron Yard went public on Thursday that it's locations will be shutting down after all current students complete their courses. This, naturally, impacted a lot of us emotionally but I know, for myself, that I'm still in this to learn as much as possible. I'm incredibly lucky that the staff here has built the Raleigh campus together and they also will stick this out until the end. Outside of that, this week was the final week of front end development before we move on to back end. Thursday and Friday we broke into groups and were inspired to begin our Hackathon project. Our theme was 'Mashup' so my team decided to do an arcade style page with multiple mini games. I, specifically, offered to do a Choose Your Own Adventure Game. I chose to write a 'tour' of Iron Yard's Raleigh campus. After a greeting and an input field for your name, you enter each room as you choose. The tricky part was to make sure that once a room...

Hackathon Adventure

Image
As we round out our month of front-end development (I can't believe it we've come this far) our final task is to collaborate on a project. We've been challenged to complete a 48 hour Hackathon with the theme of 'Mashup'. My group has picked an arcade-style page that includes multiple mini games that are all interactive and show off various skills we've learned. My particular mini game is a Choose Your Own Adventure game, or as it turns out, a Tour of Iron Yard with Stacey our Campus Director! I'm not as advanced as I would like to be but the logic I implemented to complete the task worked! It got pretty messy pretty fast but I was able to accomplish a series of alerts nested in one another. My tour is three rooms long and once you 'enter' a room it can not be reentered. I did this using nested if statements linked to dialogue boxes with template literals. This worked great but if I ever decided to add additional rooms it would get close to impossib...

So Fetch!

Image
Last night our daily assignment was to create a web page from scratch. It's super easy now to auto populate some simple HTML and complete the organization of the page through DOM manipulation in JavaScript. The difficult part was using fetch to pull data out of an API in order to display search results. I did it though! Once the class realized that there was some extra security going on and we needed to read the next day's lesson to learn about CORS we got it all sorted out. I made the colors pretty obnoxious just for fun. I'm starting to get the hang of the hover styling in CSS. I also just discovered google's color picker! Just search 'color picker css' and there at the top of the page is a sliding bar that allows you to manipulate the color in the box. That color coordinates with a hexadecimal code or rgb set of numbers that CSS understands. Voila! Beautiful colors that aren't super generic! I'm still pretty rusty on the fetch method of request...

Hazzah!

Image
As we're going through new material I've started to rely heavily on our reading as a resource. My objective throughout the day isn't to be able to build code from scratch by myself - it's to know what resources to use to do it. Half of the battle is knowing what tools you need and the other is how to implement it. If I can figure it out using the reading from the night before I know I'm doing something right. Some of the students are reaching the part of overwhelmed that I hit my first day. They had previous background in HTML and CSS so they breezed through the first three weeks and now feel stuck. It sounds condescending to recommend the night's reading to them but that's how I've been getting through the whole time. Take, for example, XMLHTTPRequests. After the reading and the lesson I learned they facilitate the process of my code retrieving data from another 'location' on the web. Knowing when I want to use an XMLHTTPRequest and how to wri...

Birthday Coding

Image
It's my birthday! But it's also Monday so I'm back to programming just like any other week. I'm ahead, for now, and spent the weekend working on a personal project! Instead of sketching it out like I know I should I jumped right in and expanded on my project until I got stuck. Then, instead of working out that knot in my code I just jumped into another project instead. Probably not best practice here. On nights and weekends I'm still crafting and practicing photography. I'm trying to build a site for each of those. Ultimately, what I would like to do is build just one single site that ties both hobbies together. I don't have anything down on paper yet but I'm willing to bet I will tonight. As these sites progress I'll update on my bugs and how I worked through them. Right now, on my photography page, I'm have the hardest time getting my images to work properly. I have them embedded in my HTML just fine but CSS is a different kind of cranky. I c...

Calculators are Magic

Image
Never have I ever put so much thought into how a calculator works. Our weekly assignment, due this upcoming Friday, is to create a static webpage that will display a green calculator that not just looks pretty but functions correctly. The looking pretty is HTML and CSS which we covered a grand total of two weeks ago and I'm already feeling rusty on. The functionality is all JavaScript. I seriously can't believe that in three weeks I'm already familiar with and using (kind of awkwardly) these three languages. In about five hours time I accomplished all of the above. I have green buttons that when pushed are displayed in the empty field at the top of the page as well as can mathematically work (as long as the operation is simple and done one step at a time). For now my GitHub link is  https://github.com/victoriarainc/week-03-project  but I will update later this week with the actual page so you can interact with my code! Yay progress! All in all I'm super proud but...

Bringing it All Together

Image
Coding is all a logic game. I've discovered it's using tools in conjunction to produce a result. Brain teaser doesn't even begin to describe it! My head feels like a swarm of bees caught in tiny net trying to solve this one! https://github.com/victoriarainc/blackjack If you take a look at the link you'll see a program (well, a bunch of notes that resemble some bizarre string of consciousness) that calculates the total of your digital hand in the game of Blackjack. I've never thought so critically about the value of a card before! Throwing in the curveball of Ace being one of two values depending on your cards really throws me for a loop. Taking it one step at a time is key though and something I definitely need to improve on. This bit of JavaScript isn't quite as crafty as some other very visual aspects but it is still super addictive! In the same way solving a word search is though. I'm completely infuriated until I finally find the word I haven...

Template Literals and Stencils

Image
In the midst of being completely floored by today's content going over my head, template literals are shining through the confusion. DOM modification itself I was pretty fuzzy on for a while. Then I came across a real world reason to do so! I learned that you would want to write HTML in your JavaScript file in order to link JavaScript to specific elements in your HTML! How would you do that? By creating a template literal that not only created the HTML that doesn't already exist but to nest commands and links inside of it that only Javascript can understand. This makes your page much more dynamic and allows for content to change easily without rewriting any code. For all of my crafters out there, this is equivalent to making a stencil! Image you want to draw a speech bubble around every month in your bullet journal. You could try to draw one around each month and hope that you get a similar size and shape. Or you could just make a single stencil (I've been 3D printing...

24 Hours Later

Image
My post yesterday was so easy going and relaxed I just had to update today. Yesterday was hard. Yesterday was hours of pseudo coding and talking out concepts and searching through our reading materials for hints. We've moved into DOM and integrated for loop concepts. The giant, looming brick wall was also combining last week's knowledge of how a <form> is structured in HTML. Well, on top of constantly checking syntax and never knowing where in these four concepts our code was faulting. A fellow student and I worked together when we realized we were at similar points in the learning curve. The task itself seemed pretty simple but if you read my .js file here:  https://github.com/victoriarainc/form_builder  than you can actually read in the comments under "the long way" the thought and problem solving I put into trying to reconstruct a dynamic input form. As in, a form that had the proper space for me to input the different types of information. I understood...

Art Tours and Photography Pages

Image
This weekend was supposed to be a retreat into beloved hobbies while I felt ahead in content for The Iron Yard. I achieved this goal on Saturday by going to a local Stamp Art Tour here in Raleigh and buying more than I needed but certainly less than I expected! After organizing all my new product and setting my self up to craft last night I thought I would spend all day today making cards and scrapbooking. Instead, I find myself working on index cards, rewriting my notes to look prettier, and knocking out enough changes on my side project to push a commit to github! Currently, I have a facebook page with a small collection of albums that hold some of my pictures. It's pretty much a super informal portfolio:  https://www.facebook.com/viphotography.raleigh/ . It certainly isn't a terrible way to go about displaying past work. But it isn't the greatest. As a way to both improve my brand and practice my development and design skills I've started to build my own page. I kn...

End of Week Two

Image
This week has been the week of a Tuesday holiday; both incredibly short and surprisingly long! I've been consistently on top of my work out of habit, thankfully, but I'm ready for material that I feel solid on. I guess in a way I should embrace this uncomfortable feeling that I don't understand what I'm doing as technology itself is never just one thing and constantly evolves. As we get more into JavaScript I will be excited to see how to actually use it in my HTML and CSS. So far we've mostly covered concepts like truthy/falsey, if statements, if/else statements, and pushing to git pages. Compared to last week it feels like we barely covered anything but I'm happy to take this step by step now. The weekly project was a challenge but I knew myself well enough to space out the web page one piece at a time. All of the concepts I thought would be difficult, like parallax and favicon, were unbelievably easy. Yet I still feel shaky on when to use flex and when to u...

On To JavaScript

Image
Now that we're in Week 2 we've gotten into a more secure, more custom routine that fits our cohort's needs. Rather than jumping into new material every day we have an opportunity in the morning to both go over the previous day's activity and to bring up any questions we had about the reading material for today's lesson. I've also had the opportunity to confront my learning curves: the first week I was learning SO much more than just the given material. I was not only grasping the first concepts of git, pushing to github, basic html, and css but also how to use a mac, what shortcuts I have available, how to work in the command line, how to learn in the flipped classroom model, AND generic programming vocabulary that doesn't actually line up very well with English definitions of the same words. We've been given a week assignment to turn in by this Friday but I went ahead and jumped into it over the weekend. I've only worked on one page so far but I f...

Learning by Doing

Image
So far there hasn't been a topic we didn't, as a class, just jump in to. While at least half of the class has previous experience with HTML and CSS the rest of us were immediately staring at a blank text editor wondering how to start 'just coding'. By the time the day ended I had a web page that looked decent but I had fumbled through the entire activity and it took me twice as long as most others. But I did it. Not to toot my own horn but it looked great too! I had done that. Sure, I had collaborated to see what the proper commands were for some things and googled how to make a rounded corner but I had still been the one to physically type everything. Next time the same project might take me half the amount of time because I won't spend an hour figuring out whether to add margins in percentages or pixels. I have a list in my notebook of broad ideas that I would love to go back over when the class is finished. There are some proper procedures and 'etiquett...