Need advice about which tool to choose?Ask the StackShare community!

Boost

36
25
+ 1
0
Python

133.6K
107.7K
+ 1
6.5K
Add tool

Python vs Boost: What are the differences?

Developers describe Python as "A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java". Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best. On the other hand, Boost is detailed as "Provides free peer-reviewed portable C++ source libraries". It is a set of libraries for the C++ programming language that provide support for tasks and structures such as linear algebra, pseudorandom number generation, multithreading, image processing, regular expressions, and unit testing.

Python and Boost can be categorized as "Languages" tools.

Python and Boost are both open source tools. It seems that Python with 26.6K GitHub stars and 11.5K forks on GitHub has more adoption than Boost with 2.96K GitHub stars and 882 GitHub forks.

Advice on Boost and Python
Needs advice
on
Python
PHP
and
Node.js

Hi, I have a project on my mind, and I need some help. First of all, I know it is all about personal preference, but I am a beginner in the back-end part. So, I am trying to figure out which language is better, for example, for user authentication and interaction between the users. Also, I don't know which framework is better for this work. My first thought was to use PHP, but after some research on the internet, I'm leaning towards Laravel. I will be grateful if you have some advice for me.

#newbie

See more
Replies (7)
Recommends
PHP
Node.js

First thoughts: * As a beginner you need to understand concepts first, all languages out there are great, each has it's own philosophy, each is better suited for a specific situation. Learn concepts first, do something, then you will understand the differences between them and why one should be chose over another for a task * As a project manager you want your project to come to an end. You will get lost in all the different solutions out there (and it's good), but don't get lost too far. Very often I see people getting lost in those debates and never achieving things, like someone writing a book that would still be choosing the font 6 months after (we've all done that it's ok, but we have to realise it)

Chances are your project can be equally good on any different stacks. I heard an interview of someone from Uber who said something like they started with python, went to node, went back to python and went to go, and with micro-services now they can have all of them all-together.

Last remark: from what I know Laravel is a framework for PHP, so it IS PHP. Just like Symphony for PHP, Express for Node.js, Koa for Node.js, Flask for Python ...

Now to answer your question :

  • PHP has a big community, it is great and easy to start with, and you will definitely will learn real object oriented structure
  • Node.js has a big community too, don't worry finding help will be as easy. It is less easy to start with but in my point of view it is a lot easier to keep on going with it on a long run. Why ? Because it's very easy to run a new project, and it executes javascript. How is it good ? Because chances are that your front will also be using javascript (React.js / View.js are crazy good). Thanks to that you will be able to master the language better because you will use it all day (and at first mastering one language is more valuable than barely knowing two) and you won't have to switch languages in your head when you code. And communication between front and back will be in json ... Which is crazy close to javascript.

Alexander is right, if you go with PHP take your time first to do things by yourself like building your own MVC, the benefit is huge and the risk is to never really be able to understand what's happening on a deeper level. (at some point you can switch to a framework though). He's also right on choosing a strongly typed language, problem is javascript is not. This is why, if you choose node, when you start being confident, add typesccript.

Hope it helps, good luck

See more
Octavian Irimia
Recommends
PHP

Short answer, if it's a web project (and I guess it is) go with PHP and you can integrate NodeJs services later.

@adzaria (Ezra Fayet) gave a great answer and I'd like to emphasize the first part: As a beginner you need to understand concepts first. For me that means to understand the web, how servers and requests work, APIs and few others.

Now, I'd like to add few things so, this is the long answer:

Why PHP?

  • Everyone knows about the community - PHP is way older so you will find lots of resources and I am not only talking about learning - also lots of helpful tools and packages
  • PHP is great for OOP - not perfect, but with PHP7 got great - and if you are a beginner you want to know good OOP for your future. Let's say JavaScript's OOP is a bit strange; I will not get into details but, let's say "it's not by the book". You can still learn JavaScript for your front-end

Why not Python? Python got popular because of AI - don't use PHP for AI and don't use Python for web applications. I can elaborate a lot here but I guess you get the point.

Why not NodeJs?

  • NodeJs got popular because of sockets - and it works great, but as a service
  • Try to find a good and affordable hosting for NodeJs. How about for Python?
  • I would not ignore the security issues that it had and could appear. PHP is older and, therefore, wiser :)

Now, about a framework... is this a learning project or something that you need to do fast? My advice is to start a small project and not use any framework. However, you can use packages and inspire from a framework's architecture - Laravel is a good role model.

Why not start a big project? You will get distracted, get into details and product design stuff and get scared or border and abandon it. For your project you need an MVP - list of minimum required features that you put on paper - that you will complete. After that you can improve.

Good luck!

See more
somes kumar k
Member Technical Staff at Manage Engine, division of Zoho Corp · | 3 upvotes · 118.3K views
Recommends
Node.js

you can choose Node.js Here are my points

Node.js is build over chrome’s v8 and its works on non blocking io. Node.js have huge community and great packages (npm) to help you out in most cases and makes development faster Node.js has been adopted by many multi dollar company Hope this helps😊

See more
Alexander Santos
Fullstack Developer at 3CON · | 2 upvotes · 114.1K views
Recommends
PHP

The reason why i chose PHP is the amount of content you can find on the internet easily. As you quoted being a beginner, i think a more mature language would be better. And that's also another reason for following with PHP.

Python is simple and "mature", but it can be a bit hard to understand if you are a beginner. Python relies on heavy abstraction, and that's the reason behind it's simplicity. Python is an "easy to play, hard to master" language, i never recommend it to beginners. Also, one [maybe personal] reason why i don't like to use Python as back-end is: Python is very data-focused. So if your app has focus on business logic, Python wouldn't fit very well. And with that becomes an advantage, if your app has statistical focus, being data-focused or something like that, Python has huge advantage among all other languages due to many great tools the community has built.

About Node, it's like PHP, but less mature. It's as easy as PHP to find tools that can help you, for example, to abstract the database-connection's logic. But to find architectural-focused content, more advanced concepts, it's a lot harder. While that, Laravel's community, for example, has a lot of materials that involves those concepts.

Still, if you are really a beginner, i don't recommend using Laravel with PHP. Do things on plain PHP first, understand the reason behind using frameworks and Laravel's motivation.

Also, consider a strong-typed language first, those are considered more didatic, but less flexible.

See more
Recommends
Python
Django

I have used Laravel, but with Django you can develop faster, as authentication and admin panel are configured out of the box. It users SQLite by default and you won't have to worry about the database in the begginning

See more
Tarun Batra
Back End Developer at instabox · | 2 upvotes · 106.7K views
Recommends
Python
Django

Python, PHP and Node.js all are capable of being used to create good complex software. There are many examples of similar applications built on all of them. If I have to pick one, I would say consider Python and Django. It is fairly easy to develop web applications on top of this stack. Scaling and maintaining the application should also not be a problem given a lot of resources are available online.

See more

You cannot choose between Python | PHP | NodeJS Since they are entirely for Different purpose.

In Bird view

Python - Large Scale Projects and if you want a job in big IT company.

Node.JS - Huge computing projects and if you want job in Silicon valley startup.

PHP - Cost Effective and If you want start a business in near future.

See more
Kamal Makroum
Needs advice
on
React
Python
and
Java

Hi everyone.

I am willing to build a used car sales platform, which will have a lot of stock/photos and will rely a lot on the back end functions and data generating. Java seems to be a good choice, but what other options can I consider that can also be easily scalable as well as a little faster to write?

Thank you

See more
Replies (2)
Ruslan Rayanov
Recommends

Hi, Kamal! I don't know if your question is still relevant. But I would like to introduce you to our solution, perhaps it will be useful for future projects. We have developed a web application constructor that can be used to create almost any website or application https://falconspace.site/. The entire development stack is reduced to SQL only. The platform is easy to configure and make subsequent changes if necessary.

See more
Recommends

Firstly, you must know that java and python are both amazing languages. But I recommend python mainly because of the variety of modules and packages available to do almost anything. If you are planning on adding graphs, you can use the matplotlib library and to add photos, use the pillow module. And just note that both of these aren't available by default, so you need to install them through pip.

See more
Needs advice
on
Rust
Python
and
JavaScript

So, I've been working with all 3 languages JavaScript, Python and Rust, I know that all of these languages are important in their own domain but, I haven't took any of it to the point where i could say I'm a pro at any of these languages. I learned JS and Python out of my own excitement, I learned rust for some IoT based projects. just confused which one i should invest my time in first... that does have Job and freelance potential in market as well...

I am an undergraduate in computer science. (3rd Year)

See more
Replies (3)
Recommends
JavaScript

I would start focusing on Javascript because even working with Rust and Python, you're always going to encounter some Javascript for front-ends at least. It has: - more freelancing opportunities (starting to work short after a virus/crisis, that's gonna help) - can also do back-end if needed (I would personally avoid specializing in this since there's better languages for the back-end part) - hard to avoid. it's everywhere and not going away (well not yet)

Then, later, for back-end programming languages, Rust seems like your best bet. Its pros: - it's satisfying to work with (after the learning curve) - it's got potential to grow big in the next year (also with better paying jobs) - it's super versatile (you can do high-perf system stuff, graphics, ffi, as well as your classic api server) It comes with a few cons though: - it's harder to learn (expect to put in years) - the freelancing options are virtually non-existent (and I would expect them to stay limited, as rust is better for long-term software than prototypes)

See more
Recommends
JavaScript

I suggest you to go with JavaScript. From my perspective JavaScript is the language you should invest your time in. The community of javascript and lots of framework helps developer to build what they want to build in no time whether it a desktop, web, mobile based application or even you can use javascript as a backend as well. There are lot of frameworks you can start learning i suggest you to go with (react,vue) library both are easy to learn than angular which is a complete framework.

And if you want to go with python as a secondary tool then i suggest you to learn a python framework (Flask,Django).

See more
Moinul Moin
Recommends
JavaScript

go for javascript, brother.

See more
Decisions about Boost and Python
awesomebanana2018

1. Type safety and inferred types

Go is type safe by default, which allows you to right more reliable code and have better developer tooling, plus with the := operator, you can initialize a variable without having to define its type because it automatically gets its type from the initial value.

2. Performance

There isn't much to be said here, but on most counts go beats both Python and Node.js on performance.

3. Documentation

I'm not talking about the Go language itself, although it does have good docs. I'm talking about Go's auto generated documentation tool, which allows people to document their packages easily and works amazingly with Go's type system.

4. Compiles to binary

If you are making a local program for somebody and they don't want to download the Go compiler, you can make Go into a native binary.

5. Built for the web

Go has built in Http libraries to rival Express.js and has a HTML/Text templating system.

6. Great Concurrency

Go utilizes Goroutines to help developers utilize multiple threads easily.

Conclusion

Go is an excellent choice for any system code, especially http networking and web backends.

See more
Kyle Harrison
Web Application Developer at Fortinet · | 17 upvotes · 147.6K views

Node continues to be dominant force in the world of web apps, with it's signature async first non-blocking IO, and frankly mind bending speeds. PHP and Python are formable tools, I chose Node for the simplicity of Express as a good and performant server side API gateway platform, that works well with Angular.

See more
Octavian Irimia

Both PHP and Python are free but when it comes to web development PHP wins for sure. There is no doubt that Python is a powerful language but it is not optimal for web. PHP has issues... of course; but so does any other language.

Another reason I chose PHP is for community - it has one of the most resourceful communities from the internet and for a good reason: it evolved with the language itself.

The fact that OOP evolved so much in PHP makes me keep it for good :)

See more
Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of Boost
Pros of Python
    Be the first to leave a pro
    • 1.1K
      Great libraries
    • 929
      Readable code
    • 818
      Beautiful code
    • 769
      Rapid development
    • 672
      Large community
    • 418
      Open source
    • 379
      Elegant
    • 268
      Great community
    • 261
      Object oriented
    • 209
      Dynamic typing
    • 71
      Great standard library
    • 53
      Very fast
    • 49
      Functional programming
    • 35
      Scientific computing
    • 34
      Easy to learn
    • 30
      Great documentation
    • 25
      Matlab alternative
    • 23
      Productivity
    • 22
      Easy to read
    • 19
      Simple is better than complex
    • 17
      It's the way I think
    • 17
      Imperative
    • 15
      Very programmer and non-programmer friendly
    • 14
      Powerful
    • 14
      Free
    • 13
      Fast and simple
    • 13
      Powerfull language
    • 12
      Scripting
    • 9
      Machine learning support
    • 9
      Explicit is better than implicit
    • 8
      Unlimited power
    • 8
      Ease of development
    • 7
      Import antigravity
    • 7
      Clear and easy and powerfull
    • 6
      It's lean and fun to code
    • 6
      Print "life is short, use python"
    • 5
      Flat is better than nested
    • 5
      Fast coding and good for competitions
    • 5
      There should be one-- and preferably only one --obvious
    • 5
      Python has great libraries for data processing
    • 5
      High Documented language
    • 5
      I love snakes
    • 5
      Although practicality beats purity
    • 5
      Great for tooling
    • 4
      Readability counts
    • 3
      CG industry needs
    • 3
      Beautiful is better than ugly
    • 3
      Multiple Inheritence
    • 3
      Complex is better than complicated
    • 3
      Great for analytics
    • 3
      Socially engaged community
    • 3
      Rapid Prototyping
    • 3
      Lists, tuples, dictionaries
    • 3
      Plotting
    • 2
      Generators
    • 2
      Simple and easy to learn
    • 2
      Import this
    • 2
      No cruft
    • 2
      Easy to learn and use
    • 2
      List comprehensions
    • 2
      Special cases aren't special enough to break the rules
    • 2
      Now is better than never
    • 2
      If the implementation is hard to explain, it's a bad id
    • 2
      If the implementation is easy to explain, it may be a g
    • 1
      Many types of collections
    • 1
      Better outcome
    • 1
      Batteries included
    • 1
      Ys
    • 1
      Good
    • 1
      Pip install everything
    • 1
      Easy to setup and run smooth
    • 1
      Because of Netflix
    • 1
      Flexible and easy
    • 1
      Web scraping
    • 1
      Should START with this but not STICK with This
    • 1
      Powerful language for AI
    • 1
      It is Very easy , simple and will you be love programmi
    • 1
      Only one way to do it
    • 1
      A-to-Z
    • 0
      Pro
    • 0
      Powerful

    Sign up to add or upvote prosMake informed product decisions

    Cons of Boost
    Cons of Python
      Be the first to leave a con
      • 50
        Still divided between python 2 and python 3
      • 28
        Performance impact
      • 26
        Poor syntax for anonymous functions
      • 19
        Package management is a mess
      • 19
        GIL
      • 13
        Too imperative-oriented
      • 12
        Hard to understand
      • 11
        Dynamic typing
      • 9
        Very slow
      • 8
        Not everything is expression
      • 7
        Explicit self parameter in methods
      • 7
        Indentations matter a lot
      • 6
        Poor DSL capabilities
      • 6
        No anonymous functions
      • 6
        Requires C functions for dynamic modules
      • 5
        Threading
      • 5
        The "lisp style" whitespaces
      • 5
        Hard to obfuscate
      • 4
        Fake object-oriented programming
      • 4
        Incredibly slow
      • 4
        Lack of Syntax Sugar leads to "the pyramid of doom"
      • 4
        The benevolent-dictator-for-life quit
      • 3
        Official documentation is unclear.
      • 3
        Circular import
      • 3
        Not suitable for autocomplete
      • 1
        Training wheels (forced indentation)
      • 1
        Meta classes

      Sign up to add or upvote consMake informed product decisions

      What is Boost?

      It is a set of libraries for the C++ programming language that provide support for tasks and structures such as linear algebra, pseudorandom number generation, multithreading, image processing, regular expressions, and unit testing.

      What is Python?

      Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.

      Need advice about which tool to choose?Ask the StackShare community!

      What companies use Boost?
      What companies use Python?
      See which teams inside your own company are using Boost or Python.
      Sign up for Private StackShareLearn More

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with Boost?
      What tools integrate with Python?

      Sign up to get full access to all the tool integrationsMake informed product decisions

      Blog Posts

      Sep 29 2020 at 7:36PM

      WorkOS

      +17
      6
      2390
      +7
      3
      653
      +14
      11
      2037
      Oct 3 2019 at 7:13PM

      Ably Realtime

      +8
      4
      3209
      Aug 28 2019 at 3:10AM

      Segment

      +16
      5
      2017
      +4
      7
      934
      What are some alternatives to Boost and Python?
      Facebook Ads
      It is targeted to users based on their location, demographic, and profile information. Many of these options are only available
      React
      Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.
      JavaScript
      JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
      PHP
      Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.
      HTML5
      HTML5 is a core technology markup language of the Internet used for structuring and presenting content for the World Wide Web. As of October 2014 this is the final and complete fifth revision of the HTML standard of the World Wide Web Consortium (W3C). The previous version, HTML 4, was standardised in 1997.
      See all alternatives