Do i need to use Bootstrap for completing the "The Tribute" front-end challenge?

I kind of person that makes everything well made specifically for just this specific project. I dont want to use any framework that pack with features just for a simple page. So i guess is it okay? just making sure :slight_smile:

UPDATE: i just read the instructions it says i can use any library, it means i can use without bootstrap.

1 Like

Correct. You can make it any way you want. As long as it meets the user stories, functions reasonably, and looks nice - you’re golden.

That being said, I found Bootstrap handy for organizing some things on the page. But if you’ve got another way to do it, then go for it.

Yes, the instructions indicate that you can use Bootstrap! Also, just something to keep in mind: in the real world, you use frameworks, grids, templates, etc. to make things simple and fast. Don’t ever feel bad about using those tools to get from point A to B. You will use them every day in a job, and you should use them on these projects as well. It is a skill to be able to know how to use those tools, and most of the time it is not over-kill. You will do yourself a diservice if you do everything from scratch!

Again, it’s still OK to not use Bootstrap, but I’m not sure I follow your logic. I think it is about 150k, which of course today isn’t much to worry about. (And is cached on many sites already.)

Also, Bootstrap is an extremely popular framework. And part of the point of the curriculum is to expose you to this extremely popular framework.

And while I admire the pedantry of the “why load this large framework when I can just try to do these few things myself” (you sound like me refusing to pay someone to change the oil on my car), there are some downsides to this:

  • you don’t get to learn a very important framework
  • you don’t get access to some incredible UI enhancements
  • if you try to duplicate this functionality, you run the risk of sneaky errors

And what does it gain you? Your page loads .05 seconds faster? Is that worth it?

It’s like me with the oil change - it takes me twice as long, makes a mess in the garage, I have to make and extra trip to recycle the oil, and I run the risk of screwing it up. For what? to save $3.50? And I could have used that time to do something better. My time is worth more than $7 an hour.

Sometimes you can be penny wise and pound foolish.

It depends…if you dont have a good handle on CSS and just learning, I think that a simple project like this is a really good one to do in pure CSS to be able to learn how it works. Bootstrap is an incredible tool that makes your job easier instead of reinventing the wheel time and time again, which makes no sense… but theres a difference between making your job easier, and skipping learning the fundamentals to use something that does everything for you. A lot of the questions and issues I see people have with Bootstrap stems from having no idea how CSS works…

So…if you already have a handle on CSS then it makes more sense to learn and use Bootstrap. But if you dont understand CSS that well, it makes a lot more sense to use small projects like these as learning experiences to first get on solid ground with the foundation that Bootstrap is based on…

Your logic though, to make everything specifically for each specific project… might want to shift your perspective there because what that reads as is…Id rather spend extra time repeating myself than use tools available to me to help me work more efficiently. And theres no pride in that. Just because you can hand code everything from scratch, doesn’t mean you should…

Your conclusion is correct - understanding and sticking to the requirements of a problem is a tremendously useful skill - maybe even critical to effective learning - you get it for free in a traditional learning environment with teachers and textbooks that constrain and guide students - it’s trickier in a self-guided environment like freecodecamp - without a laser-sharp focus on the problem at hand and its goals it’s easy to overcomplicate things and try to bite off more than you can chew

bootstrap clearly is popular and practical - but like most libraries and frameworks it is not essential and just one of many choices - what is essential is javascript, css and html - the shelf-life of non-essential tools is much shorter than fundamental technologies - the better you understand fundamental tech the better and more adaptable programmer you are

bootstrap clearly is popular and practical - but like most libraries and frameworks it is not essential and just one of many choices

True. But I don’t think Bootstrap is going anywhere anytime soon. And even if it does, there are plenty that are Bootstrap-like - learning Bootstrap will help. And even if it is replaced, there will be a lot of legacy Bootstrap code out there - I still see calls for programmers in COBOL and ForTran.

And how do you duplicate a grid system in vanilla HTML/CSS? With table elements? They’re clunky, and unresponsive, and no one uses them anymore. Sure, with a lot of hard work, you could probably implement something that got some of the functionality, but in the process you run the risk of making a lot of errors, you’re going to have to duplicated that for every web page you do, and you just spent a lot of time reinventing the wheel.

And part of being a modern programmer is learning to implement what others have written. Learning how to implement libraries and frameworks is part of what you need. And as a teacher, I get nervous when students start telling me, “I don’t want to do it that way, I want to do it my own way.” Often that is a way to avoid something with which they aren’t comfortable. It becomes a “sour grapes” thing where the convince themselves that they are really avoiding the thing for “good” reason. I always tell my students, “Learn to do it the way I asked, then you can try and do it your way.”

True, FCC is pretty loose about what frameworks you can use. But I think that is more like, “If you are experienced with some other library/framework that does the same thing, then go ahead and use that.” It is not meant to mean “If you want to figure it out on your own because you are secretly not comfortable with what we’ve taught you.”

I don’t know the level of the OP. Maybe he’s an experienced web dev and he knows Bootstrap but prefers something else. Or maybe he’s brand new and Bootstrap scares the hell out of him so he’s trying to avoid it. I don’t know.

I do know that not learning one of the most popular frameworks in web dev would be doing him a disservice. I just went on and did a search for “bootstrap” and got 6056 hits. One of it’s competitors, flexbox, got 58.

Learning to be a web dev means learning to work with unfamiliar technologies. Beginners often imagine themselves as a lone alchemist, choosing his/her tools and crafting what s/he needs. But often you are part of a team and the tools are chosen for you. That is an important skill.

This is a mountain out of a molehill - OP simply asked if bootstrap is needed for a specific most basic page - OP correctly surmised no - neither OP nor I advocate not using bootstrap - on the contrary OP appreciates bootstrap has many features - so do I - it’s just not necessary for the tribute page

1 Like

flexbox is not a competitor to bootstrap - flexbox is a fundamental CSS feature

It could be used in bootstrap or any other presentation library or framework

How to do a grid?

It is new and likely to have initial hiccups despite a long gestation - but seems very promising

Sorry, I was confusing flexbox with the css grid system.

Again, my concern was the intent of the user. Is he trying to get out of Bootstrap because he already knows it or because is uncomfortable with it? He mentions his concern about the size of the framework, but as I mentioned, I don’t think that’s an important reason, especially in a learning situation. And as a teacher, I know that students don’t always completely understand why they want to do things a certain way and it takes a little digging to find out that the reason they state isn’t the real one.

Yes, I think people should learn CSS, including their grid system and flexbox. But new ideas that “seems very promising” are a dime a dozen in the web dev world. They come and go like leaves in the wind. A few will stick. Maybe this one will.

But we should keep in mind that Bootstrap is one of the most popular frameworks around and will be for some time. I don’t know what things are like in Pakistan, but over here it is a requirement for many jobs. Out of all the job postings I’ve seen, I can only remember one that explicitly didn’t want the employee to use any frameworks, but wanted it all built by hand for the logic that the OP gave (that one really stuck in that memory). That’s one out of thousands. But I’ve seen hundreds asking for Bootstrap by name. Only a few have mentioned CSS grid. It’s not about an argument about which is better - it’s about which gets the job.

I just wanted to make sure that the OP wasn’t skipping it for the wrong reasons, stated or unconscious. If he’d said, “Yeah, I’ve been using Bootstrap for years so I want to try something else” then I’d tell him to go for it. But his “large-framework” argument didn’t seem like a good idea. I’ve always been of the opinion that you should immerse yourself in your education. In my personal teaching experience (guitar, piano, music theory, chess, writing, ESL), students that try and to me what and how to teach them usually don’t do well. Immerse yourself. Admit that the teacher/program knows more that you do and just do what they tell you. After you’ve mastered the subject, you can have an opinion on how and and what should be taught.

Learn them all. Learn all the layers. Never stop learning. And make sure not to avoid something for the wrong reasons.

Reading intent, intuiting unconscious reasons, assuming locations like here or there are particularly hazardous over the internet

Additions or changes to standards like CSS or HTML or Javascript are not dime a dozen - these go through years of rigorous debate and testing before being accepted - these are big deals - their impact is on vast swaths of code for years even decades

Reading intent, intuiting unconscious reasons, assuming locations like here or there are particularly hazardous over the internet

I fail to see what the “hazard” is. And I wasn’t “intuiting unconscious reasons” - I was allowing the possibility, based on 25 years of teaching experience.

Additions or changes to standards like CSS or HTML or Javascript are not dime a dozen - these go through years of rigorous debate and testing before being accepted

I guess I misunderstood when you said, It is new and likely to have initial hiccups despite a long gestation. I know a CSS change is different than a new framework. Perhaps you missed the part where I said that it should be learned. More than once.

Maybe you’re reading different things than I am, but I see daily articles on “the next big thing”. Yes, CSS grids are new and exciting. So were HTML tables at one time.

But this is getting out of hand. I’m going to ignore this thread so please don’t be offended if I don’t respond to future posts of yours on this thread. If it’s that important to you, you are welcome to contact me for a friendly debate in PM. There’s no point in exposing the group to this meshugas.

I think we agree more than we disagree. We’re just getting caught up in semantics and perspectives.