Had a very long lunch yesterday with a good friend from when I was teaching at the university, digging deep into the subject of programming and later on a lot about philosophy. One of the things that we touched upon under the subject of programming is the different types of “schools” there are in terms of methods and approaches. It all comes down to problem solving, being able to break down the main problem (sort of the big problem) into smaller and smaller problems, to more easily solve them one by one. But once you know how to break down problems and know which language you’re going to work in, you have the choice of finding a library or building something on your own. I have always been someone who likes to build things by hand, not because I think I can do better but because I want to learn how things work down to the very core of it. While my friend likes to do both, building a custom solution or using a library, and he makes the decision based on what is more fun and educational. Like most programmers he doesn’t like touching authentication, where as I love building on my custom authentication solutions, improving them and making them more and more secure. So what I’m trying to get at is that the debate of whether you should use a library or build something custom is not as easy as dividing people into two groups with the one’s who do use libraries and the one’s who don’t. It’s a very creative field and the choice is based on the programmers schooling and personality as well as the project’s nature and restrictions. My advice is to do both and try to learn what you prefer to do and in which situations the custom solution or a library is the best choice.
I also receive a lot of questions on tips for becoming a better developer or ways to learn more, and there is no better way than to just build things. Think of something that you’ve always wanted to build, like a copy of Facebook or Twitter, or building an awesome forum for programmers, or simply a calculator. Decide on a project and set that as a goal as you’re learning, that way you’ll focus on the pieces that are required to build that project and will learn as you build on it. 👍🏻
I am so excited to get another awesome week started and get back into the daily grind at my projects and side hustles. Starting off I’m sending over the offer for my project with a friend at the office to redesign and build a new website for a local business in Gothenburg. This particular project is going to be a lot of fun as I get to collaborate with an insanely talented designer and remake a website for a very popular and high end business. I also noticed that the company that manages the old scheduling system actually “closed” the link to the PDF renderer that I use to parse the PDF files and map out the lessons. The actual PDF renderer is still accessible if you have the link to it, but you can’t reach it from the web viewer. So even though the might not be a very technical team I will pause the work on the scraping tool for now and wait until the meeting with the lawyer to make sure what I do is perfectly legal. I know most of you think of scraping as something bad and what script kitties do to create copies of news websites to get visitors to their website and earn add money or whatever. But in this case the system has no policies or information about the data and their customers, the schools, own the actual data. Nonetheless I’ll wait for the meeting to see where I will go from here, as having to build my own scheduling system will make the process of getting the platform in the hands of users much harder than using existing data.
While I’m waiting for the meeting I’ll continue working on the actual platform that was on hold while I was working on the scraping tool and making a lot of improvements on my old code. It really helps to take a break from a project, at least when it comes to programming, to look back at your own work and find ways to make it a lot simpler and easier to manage. I’ll be pulling back the design on the platform to go back to my old days of building the functionality in pure HTML and simple layout by hand before I move to design the full platform. Makes it much easier to get the functionality working and move to integrating the app with the backend. Anyway I hope you guys had an absolutely awesome weekend. Keep up the hustle! 🔥
Had a lot of fun at Security Fest 2017 yesterday, listened to some awesome talks from really inspirational people and getting to talk to some of them in person as well as hack and build together stuff in between talks. So much fun, so many awesome people and so much inspiration, can’t wait for next years Security Fest. As I’ve always been someone who never liked parties or even gatherings I try very hard to push myself to go to more and more meet ups and events, as I get to meet and talk to so many amazing people and share knowledge and ideas. Being more open about my own life and way of thinking has had a huge impact on the people I get to meet, the opportunities I am given and the environment I get to live and work in. Embracing the fact that I might as well not know anything or be wrong about everything and thus actually listen to someone’s idea or opinion and reflect over it has had a big impact on my own perception of reality and our society.
The event did take up a full day so I couldn’t get much work done at the office, but I always work a little in the morning before I leave home and yesterday I did some small fixes on the migration module for my personal project. This project will be one of my main focuses during the summer to have it up and running for this fall, trying to meet as many people from my core user group as possible to get feedback and making sure all legal and financial plans are in place. Today I’ll spend the day to build a simple promotion website for one of my colleagues at the office who is just about to release her new book. As it’s a very simple website, both design- and functionality wise, I’m pretty sure I’ll have time over to write up an offer for the project I’m doing with Mikael. He’s a very skilled and experienced illustrator and designer from the office that I have the privilege of calling my friend.
Here’s a quick tip for anyone who wants to run their own business, especially the freelancers out there. Try to find a collaboration space with people working in similar areas as you, preferably freelancers and smaller companies. The inspiration, knowledge and opportunities you’ll be exposed to is just invaluable.
All right, so the “hack” is now working flawlessly on all types of data from different entities without any issues, the texts are mapped to their respective fills and the POST parses the time data perfectly. What’s left is writing some cases to analyse the block objects and “double objects” to be able to map the correct time to each fill, and update the part of the code that scrapes the base data and make sure I grab as much information as possible. For those of you wondering if this is in any way legal, it normally isn’t but in this case the company has no information on any of it’s publicly accessible pages / systems about data ownership or scraping policies. But to be sure I have booked a lunch with a lawyer contact of mine who specialises in trademarks and data policies to discuss the matter and show him the implementation. So once I have finished the migration module and I receive the go from the lawyer I can move to working on the actual app and the platform, planning on having it up and running after the summer.
If you want to become a better developer the best tip I have is to simply build a bunch of stuff and be open to fail, which usually is simply creating the solution in a very complex and unstructured way. But there is a huge advantage in trying to build things on your own, trying different file and folder structures and database designs. And that is that you will have experience in the difficulties and problems with building and or structuring a project in a certain way. Rather than doing the “right” thing from the very start, then you simply know that it’s the best way but most likely not why. And this isn’t an argument against what’s most profitable or time effective, it was never a question about that. To me there is a huge difference between building something to learn and become a better developer, and building something as quickly and as efficiently as possible. I always try to focus on building to learn new things and improve my skills, not to do it as quickly as possible. Which sure is harder to do in a client project than it is in a personal project. But if you want to learn, maybe you should consider building more personal projects?
Un text editor per un Dev è come un coltellino svizzero. C'è chi lo preferisce super accessoriato, c'è chi lo vuole leggero ed essenziale ma tutti ne hanno uno in dotazione!
Yesterday was focused on continuing work on the migration module for my personal project. It successfully maps out the objects and can fetch the individual data for them, but the object data that is presented to the user is not always the same as is in the individual object data. So I’ve been working on a way to compare them both to pull in as much information as possible for each object and then simply present the simple version to the user but keep all the raw object data for analysis to be able to better process the data in the future. And yes, this probably doesn’t make much sense to you since you don’t know much of what it is that I’m building, but the migration module is really a powerful scraping script for “migrating” old data from a system to my project’s database. The system doesn’t have any sort of API and my old project that I’m “revamping” has to send an unnecessary amount of requests to be able to present the data to the user. Where as this new solution will send the same amount of requests that the user does in opening the app twice, once that is done it’s stored on the project’s database. This is great because the users open the app at least 10 times per day per user, which has resulted in the system’s servers being taken down. And once the data has been stored in the database, the project won’t have to send any more requests to the system. They keep their infrastructure and their client, I focus on presenting the data in a beautiful and useful way to the user. We’ll just have to see how they respond to it, lol.
Apart from that, I’m working on a new client project with a colleague at the office where we are designing and building a new website for them. I’ll be doing the web design, layout and implementation while he did all the graphical elements for prints, interior and more. It’s going to be a lot of fun to do a collaboration and see how we can complement each other’s strengths to create a beautiful website.
Once again I want to thank all of you guys who sent over the amazing feedback, I really appreciate it! I hope you all have an absolute fantastic week and as always, keep up the hustle! 👊🏻
Et tous ce que j'aimais chez toi c'est envolé , comme les feuilles d'automne sur une rue ;une rue comme les autres mais on l'a tous les deux prises et on c'est croiser . Puis on c'est rencontrer et on c'est aimer .Mais comme tout ça c'est mal passé et on a avais beau s'adorer encore on avait cette capacité à tous rater et moi je ne voulais personne d'autres que toi . #textes#texteditor#texteffect#textedit#textedits