How Fast Can You Build Apps? And Career Advice for a Newbie Developer

For me it made development more enjoyable - can’t really say anything about time as I haven’t measured those metrics

Very good :slightly_smiling_face:

Yes, I particularly deal with a lot of data and data processing, and Wappler isn’t really the best at that - be it lack of performance or bugs when handling less usual data structures. In my day job I use Go and I’m very happy with it. For standard web development I still use Wappler. Also, I couldn’t see myself building Facebook’s back-end with Wappler, Laravel still has better practices (e.g.: ORM) than Wappler in my opinion (except for the front-end, Wappler would be fine for that)

It’s my opinion one should learn how “real” developers build web apps, so they can later understand the limitations of Wappler or even work around and create Wappler extensions.
I come from a Laravel (PHP) background, so for that you have Laracasts and Codecourse. You could also learn something else like Flask. Actually, go on Youtube and search for the CS50 playlist, and you’ll learn some of the foundations of computer science and web development along the way :slight_smile:

Meet Wappler extensions:
https://community.wappler.io/c/wappler-extensions/54

Personally, I still use regular coding for building some internal APIs that are then connected like through HTTP (Wappler’s API Action), because of that data processing thing I do.

Have a look at what John (@scalaris) has managed to build using Wappler.

@ben, what @scalaris has done and been willing to share is super inspirational and an impressive use of wappler.

I was just hoping to stir up a little more discussion in that vein about how Wappler has positively impacted their workflow and and maybe what they were doing before.

@ben I know wappler uses server connect/app connect frameworks. That being said, if I’m understanding what you’re saying, when you were using the PHP server model, you were also able to write boilerplate PHP code? I imagine then with the NodeJS server model I could write vanilla javascript in the code view if whatever reason I needed to. Or am I actually right in that I’d need to use @JonL write javascript extension for that?

I’m certainly thrilled at the idea of being able to extend wappler and it being extensible.

It’s hard as a new person in this field.

For one, although I will pretend to know very little, it seems from the outside that a lot of people on youtube that teach or have anything to do with coding get too infatuated with the tech and lose sight of actually using the framework/code ect to solve real problems.

@Apple to build off of what you said. Let’s say I build an app in wappler with this setup.

Bootstrap
App Connect (Their variant of a Vue, React, Angular Equivalent framework)
Server Connect (Express JS or PHP Server Framework Equivalent)
NodeJS
Postgresql

I had thought about watching tutorials on those underlying technologies and then maybe something similar to Server Connect/App Connect like react ect?

Maybe then having a better understanding of those tools would help me appreciate more what wappler is doing and use them in a more constructive way? Maybe spend some time learning design patterns that can be applied with wappler or any other dev environment?

But It’s hard. I want to push what I know so that the circle of problems I can solve increases, but I know if I don’t apply what I learned immediately on a project basis I’ll forget it. The catch 22 is, sometimes you often don’t know that a solution is even possible or in the realm of reason if you don’t have enough knowledge of the tools.

Honestly, all you need is CS50 and getting started with Wappler :slight_smile:

Wappler abstracts a lot under the hood, like NodeJS you won’t ever touch the core files, so I wouldn’t spend much time learning NodeJS. You could search for a NodeJS + Express video (Express is a framework) to learn the basics such as routing, but I wouldn’t spend much time on it. Learning Javascript could be a valuable skill-set though

For PostgreSQL you can check the CS50 videos

It’s helpful to have a general sense of real web dev tools, but definitely don’t go too serious on them. I wouldn’t spend any time learning Vue/React/Angular because I can’t see how it would help you, but if you really want to try that kind of stuff outside Wappler you could check AlpineJS

Also, it’s helpful to learn a bit of HTML

2 Likes

Hi! I can’t compare Wappler to fully coding a web app from scratch as when I started with Wappler I had 0 coding skills.

All I can say is that Wappler allowed me to build everything that I imagined to build till now very quickly, and I built a quite complex SaaS. The performance is great

What was surprising is that Wappler also made me an actual (still very beginner) developer, it made me understand coding and inspired me to learn Javascript / Nodejs to a point that I’m very comfortable building extensions and integrations now, never imagined myself being able to do that when I started with Wappler

@Apple Sorry for a different subject in this post, I’m planning to build very data intensive api’s soon, and from my research GO seems to perform much faster compared to Nodejs etc. Do you think that I should try to build the data intensive api’s in GO outside of Wappler and connect with the api connector? And if so, do you have recommendations on frameworks to learn with GO?

4 Likes

Hi, have you looked at the “Wappler road map for 2022-2023”?
George (CEO) mentioned that “new server models” (support for GO) will be implemented but not in a short term.

Hi! Yes I noticed but I don’t think it will happen within 6-12 months, and then it will probably need a couple more months to stabilise / add features

Anyway was just thinking to build api’s with GO specifically for heavy data stuff + learning something new. Wappler with Nodejs is more than enough for 95% of what I need

1 Like

Hi,

In my case, I choose building APIs with Go when I start to notice things are getting messy in Wappler. Because Go is a typed programming language, it’s easy to define data structures (e.g.: of a JSON) and perform operations in it. I don’t have to worry about Wappler’s UI not following my less-usual structures and I use Visual Studio Code’s Intellisense (with the Go extension) to get auto-complete.

These tools are useful to convert JSON to Go structures:
https://mholt.github.io/json-to-go/
https://json2struct.mervine.net/

Regarding frameworks, lately I’ve been using this one because it’s similar to NodeJS’ Express:
https://docs.gofiber.io/
That framework uses a non-standard HTTP server, it might be faster than Go’s native net/http server but it might also complicate debugging when your code breaks. At the moment I’m ok with such risk.

Other framework alternatives that are generally well-known and use the standard net/http server are:


This one’s “idiomatic”, meaning it aims to follow Go’s official net/http design pattern:

Something to be aware is the Go community is not very fond of frameworks, unlike other programming languages, so ideally you’d stick to a framework that’s “idiomatic” (chi), but in the end it’s a balance between “idiomatic” and “productive” you have to choose, so that’s why I’ve been using Fiber for my latest projects

2 Likes

Thanks for the information! Will try to create something with chi then while learning

@ben Forgive me if I’m prying, but I don’t think you’ve ever mentioned what you’ve used wappler to build stuff for. Maybe in a general sense if you don’t feel like sharing. Did you end up building a SAAS, build internal apps for your organization, or end up doing freelance like website building?

@Temoran Hi, Alex!

There is also another important thing that you must keep in mind, when deciding either go Wappler or regular programming.

Who will keep maintaining your project when you for some reason can’t do it?

There are some scenarios when it may happen:

  • After couple of month after you finish the project, old client write you that they needed new improvements, but you already busy with new client;
  • You have time to do new tasks for the old client, but your pay grade now not comfortable for them;
  • You don’t feel like you and client on the same page no more;
  • You just want to change the project you working on, to try something new;
  • etc.

There would be a huge problem finding a replacement, especially for an affordable rate.

And also it would be hard to find people if you decide to form a team instead of working solo.

So, no matter how promising Wappler or another tool is, if this tool isn’t popular enough, you have a high risk of facing addressed problems.

1 Like

I create whatever my clients ask for. In most cases these are just normal websites to that give their business a presence on the web. Sometimes these are e-commerce sites.

The latest website is a fly-off from a complete Occupational Health and Safety System that I created for the state’s Automobile Chamber of Commerce many years ago. This was an online system that was supposed to be used by their members. Some did use it, others found it a waste of time because it took away from their core business.

The latest application has been narrowed down to only offering Worker Induction as in

This is the template for the role which can then be printed to consequently be filled out by hand

It also has a library of references

All very simple and fast to create using Wappler.

4 Likes

Hi Ben,

this looks great! How did you integrate the PDF preview?

1 Like

Hi Marcel,

I used <iframe src="URL"></iframe>.

For the PCM’s this was

<iframe dmx-bind:src="'/assets/safeshop/folder/PCMs/'+ddPCM.data.name" class="oncanvas" dmx-show="ddPCM.data"></iframe>

See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe for more.

3 Likes

@ben Super impressive. Sharp and clean build. Thanks for sharing Ben. The more projects I see like this, the more inspired I am to use the tool to its fullest. Do you have any ballpark of what you think something like that would have taken for you in raw PHP vs. Wappler?

So I believe I’ve discovered why I’m so on the fence.

I guess my fear is in my own eyes I’ll feel like I’m never a “real” developer. Which maybe sounds silly… I Know.

Or rather… is Wappler a secret weapon or does it become a crutch I’d want to keep secret from people.

Do you feel like someone new is going to still become a developer in their own right and pick up skills that would transfer over to other frameworks over time?

The last fear. I’m worried about becoming overly reliant on it and the tool goes away. Maybe the wappler team is hit by a bus, or whatever.

I know the source code will still run on our servers, which is awesome, but obviously all development would stop with the Wappler IDE if it’s no longer supported. So essentially anything we’ve built would probably have to be rebuilt sooner or later.

What would you guys do if Wappler disappeared tomorrow?

Again sorry for the hard or negative questions, these are just the primarily things I’ve worried about.

Hi Alex,

VSCode vs Wappler equates to 1 month vs 1 week (approx)

Join the club

Yes. The IoT (Internet of Things) is an ever changing environment.

Start using VSCode.

The code produced by Wappler is industry compliant. This means that any editor (even Notepad) can be used to maintain a website that was initially created using Wappler.

New projects would need a different approach.

See: https://www.tiktok.com/@notandrewmurnane/video/7132646625444515115?is_from_webapp=v1&item_id=7132646625444515115 :sunglasses:

@scalaris needs some fresh thinking?

I’ve been vocal on these forums and there’s plenty of examples - I’m not going to get into a rant about my thoughts this AM.

At least on the front-end you’ll learn like a real developer, because you can check the HTML source at any time and Wappler’s framework is similar to AlpineJS or Vue. Routes and templates are also concepts present in other frameworks such as Laravel and AdonisJS. It also uses Bootstrap as a CSS framework, which is pretty much industry-standard for non-front-end-people (for the front-end ones, there’s Tailwind CSS which isn’t supported by Wappler)

The back-end is perhaps the less transportable skill in terms of direct “real dev tool”, but this is why courses like CS50 exist, so you can learn the regular way

1 Like

Current Mindset After Deliberation.

  • Write time speed is more important than run time speed for 99% of most apps.
  • Getting something working is more important than getting something perfect.
  • Focus on the problem/solution of the domain and then, and only then, consider a tech stack. The tech is secondary.
  • Every tool that you use has trade-offs, learn to live with it.
  • Let go of wanting to know and master everything. Again circle back to whatever problem I’m trying to solve with an app and how can I go about it given my current skillset.

Thoughts on Using Wappler Going Forward

My biggest concern initially was becoming overly reliant on Wappler and being locked into a proprietary code framework, but every framework, raw code or not has some sort of lockin, in the sense that you’ll have to make the mental shift if you ever move to another language/platform. Get used to the new syntax. ect.

That includes Python/Django, PHP/Laravel, Ruby/Ruby on Rails - ect… and each of them has people that complain about certain libraries not being supported anymore ect…

Forget about the fact that there is a new Javascript framework every 12 seconds.

What excites me is the prospect of rapid app development. And at present I couldn’t find anything close to that with the amount of flexability Wappler gives.

I could go with a more traditional code framework but if I’m slower at developing apps, then there will be many times where building an app/automation just won’t even be worth it given the time necessary and the payoff to myself or a company I’m working for.

I’m confident that if I stick with Wappler that I will be able to pickup that speed.

@ben Thanks again for your thoughtful comments. One question I had for using VS code. Do you ever change/update/copy server connect/app connect code/logic in code view and when has it been useful vs using the interface?

Is there any useful resources for picking up the server connect/app connect syntax docs?

@Antony I believe you mentioned you code longer server connect in code view? How did you pick up the syntax? Is it like primarily making a certain part of the script that you’ll reuse with minor changes by coding it up in the interface and then you copy and paste it over?

@Apple You make a lot of very good points. It makes me more comfortable to invest my time into this tool.

@scalaris I apologize if I came off the wrong way. You’ve been extremely generous to this community by sharing to incredible success of your wappler project. I suppose the main thing I’d be curious to know, and forgive me if you’ve mentioned it before, but what have been the biggest challenges, frustrations of using this tool, what has been the biggest blessing? Did you consider any other tools/frameworks besides bubble before you started building?

1 Like