Thursday, 19 April 2018

State of Wordpress: Elemento

Hey guys,

As you might know, Wordpress is number one CMS in the world. Because of its popularity and openness, developers around the world keep contributing to the development of Wordpress.

Year-by-year we can see the de facto way of building Wordpress website.

I have a chance to learn how to build the Wordpress website from scratch ( or almost scratch with underscore theme ). It's definitely time-consuming and quite hard for non-coders. If you do it for someone you probably want to charge it.

Another way to build Wordpress website, besides buying templates, is using site builder with Wordpress plug-in. Before I kind-of-know SiteOrigin Page Builder, but now there is the new one and it's better, it's called Elementor.

Compared to SiteOrigin Page Builder, Elementor design the website on the actual website. Not in a form of boxes like SiteOrigin Page Builder does. Therefore, we can get the final result immediately without saving and preview it. It definitely saves user's precious times.

Elementor has a great flexibility, which we can play around with its constraint and CSS. We can be more creative by changing stuff that we know about CSS.

Even the Elementor has many great things, users need also be smart to plan their website too. Know overall feel of what they want on the website can help them to design and develop a website.

So, if you haven't tried yet the Elementor plug-in, I suggest you give a try.

I have made few pages updated with Elementor like irekasoft.com/expense and irekasoft.com/faceclock-pro.

Till then, happy coding.


Sunday, 15 April 2018

Wireframing - Process After Process Flow Diagram & User Case

Today I would like to write about things will happen after we completed the 'process flow' and 'user case'.

As a definition, 'process flow diagram' is diagrams that show how the process of the app from the start user open the app until the user successfully made a purchase. It shows in boxes but we detail out the flow and the detail inside the boxes. On the other hand, user case is where the flow of information from multiple stakeholders. By having those diagrams make it clearer what we should do with the apps.

And as part of the business make it clear that is what our client wants in black and white. We use a tool draw.io to make the process flow diagram and use case.

WIREFRAMING

After those steps, we will enter the wireframing process. As the name suggests, it's like a wire and frame. It has many flavors of doing wireframing. We use an app called Sketch to do wireframing. It's quite a high-fidelity tool for doing wireframing. Yes, it's but, for the purpose of wireframing, we will less focus on colors and the final graphics.

What we will focus are:

- What kind of information we want to display
- How is the flow of the apps in holistic view
- Menu view.
- Type of data. Detail of data will be shown.
- Images
- Layout
- Structure
- and many more.

As the next step from the planning, we cement the visual element of the project so the client can see as roughly how the apps will look like and what the functionality it will have.

So that's is an introduction about wireframing. It's quite fun to do while it's quite essential and less painful because we don't have to think so much about the final design with colors and aesthetic details.

Regards,
Hijazi







Monday, 2 April 2018

It's April 2018. New 2nd Quarter.

Hey guys,

We have passed 3rd month of the year, enter 2nd Quarter of 2018. Hope things are pretty exciting for you guys.

I am at Cyberjaya. Busy building stuff, self, and community here. I think Cyberjaya, with its name Cyber, has much potential in nurturing Information Technology community within the place.

On the day of the month of last month, I attended local startup and developer grand meetup called 'Startup Developer 2018'. It was held in BIT (typed as BI+) Space, in CBD Perdana, in Cyberjaya.

Usually, they had that kind of events in MaGIC, Cyberjaya, but this time the changed the place.

Well, what can I say, it's a very wonderful event. It started with a speech by Zepto Express CEO, about failing and succeeding as developer and entrepreneur. I recorded his speech so maybe I will someday upload it to YouTube. His speech remarkably has important messages to fellow other entrepreneurs. The problem he discussed were: how do we split shares in a company, how to raise money, how to start a company, should we work first or jump to entrepreneurship. And also congratulate on his 4th child on that day too.

Others speeches are technicals, you may use Google to go deep.

New, and on our horizon is blockchain, cryptocurrency, comes Coin.me. I think blockchain is cool, ICO is cool but the way their representative talk like kind of arrogant with their solution.

I meet some of 'data nerd' on Crypto. Discuss what's ICO all that stuff. And also about working life.

Look at people on a long term. A friend jump work to other places just want to work on other kinds of tech, however, his management changed mind. He has to work on new tech that is not the tech that my friend wanted to jump into.

Yeah, good breakfast and lunch. I think CBD Perdana is a good place to have an office there. Many restaurants around there.

So for me, I am still I am, I do iReka Soft as some people might know. I specialize in mobile software, I do majorly in iOS app development for App Store and I kind of like it. On the other hands, I also serve some clients for custom development services, which is I also like. This is especially I like to hear from people want kind of mobile apps that can help their life or business better. I might not do everything today, but it does make me thinking and want to figure out how can we deliver that kind of solution in the future.

Alright, folks, I burn the midnight oil do some study on Illustrator, watch some unheard Steve Jobs video when he was in NextStep, giving a speech at MIT. Many can learn from him, really. What he said is a reality today. Truly was a great visionary.

See you on next post.
Hijazi, @hijz
iReka Soft





Saturday, 24 March 2018

What I have learned with React Native in 1 Month

Hello again, so this post about what have I learned with React Native within 1 month.

1. I Always Thought RN is the Future but don't know How to Start. 

I am a long time iOS app developer. I studied iOS since I was in university, back then, I learned by myself, with book. I realized that the process was super slow. But I managed to published a simple quiz app on the App Store, then I work on a local company on pursue to develop more iOS apps and related technologies.

Fast forward, I learned stuff related like Laravel, Android, and UI/UX design with Sketch and Illustrator. I learn little Ionic, and now should I jump into React Native. With the help of community, I jumped in. It's was not easy when I learn it casually. I searched for the complete video tutorials. And write and listen to it completely.

I finally can grasp the essense of RN. It felt so good too.

Well another think is I think RN is good for client work. And to help people to develop apps for iOS and Android without developer too much hassle to maintain it.

2. Redux is Hard

The paradigm is different. With iOS I learn MVC, singleton, notifications, app delegate and so on.

With RN I got Redux. Not only that, there is redux-thunk, redux-persist, lodash. All that JavaScript libraries goodness.


3. Expo is Slow

I tried expo and not suitable with my workflow. Plus it's seems limited for any other library. And not customizable as it doesn't provide iOS projects.

4. Firebase First

Being a developer, and develop just RN can take so much time, so I decide to move fast with Firebase. It helps me to develop apps that need server faster. If the project is large, so then I should code with connecting with custom server.

5. React Navigation

This is the way to go for developing apps.

6. Native Base

I haven't touched so much on this, but to make app looks good enough, use this kind of libraries.

7. Icons Images 

I didn't notice that to put an local image can be so much pain. And using vector library you have to use link. React-native 'your libs' link. What it does is to add appropriate stuff into Xcode or Android Studio project to make it compatible.

8. JavaScript 

I have to jump into learning JavaScript more deeply especially to understand the nitty gritty about React Native itself with JavaScript. You know about state and props.

9. Yarn All away around

I just dismiss the npm for yarn. I found out using yarn better, and had no issue so far.


10. It's Not that Easy

To be working with something new and foreign. Things usually don't come right at first. It can be stressful, feeling not knowing so much. So having community support is good to get the motivation and keep moving.

11. Visual Studio Code Helps

Microsoft creates this cool editor called 'Code', which is an code editor that can add cool plugin that helps you write RN better and less pain and less stress. Try it to believe it.

Conclusion.

I love the outcome of what I do with programming. I know it's hard to do with programming and all little words that one of my friends called it 'cacing' (worms). Haha, it's can be hurt or can inspire you that all the codes you make is not everyone can write. The ones that have brainpower can do. Actually it's hard to do coding when you are not well, when you are stressed. So the sanity is required to write code.

RN is pretty delicate and i urge to learn from master so that you can be less stressful and can do more with less time. Really, I am keep learning because I am just learn it for just 1 month only.





L in LUCK

Hey guys,

Hijazi in the house, so today I have a thought about L in LUCK which is 'logistics'.

I learned about LUCK in a class with Azizan Osman in IMKK a few years ago.

Well, logistics is, your environment, your surrounding. And as for an indie entrepreneur or solopreneur, to be on your self can be very hard. Surely can, but for the long run it will be tiring and will tear your motivation. In that case, we have to be in the right surroundings, good groupings. We have to choose wisely.

I love to be an entrepreneur, I love to make my own decision, to live how do I want. I am able to navigate the journey I think can give impact to myself.

I create apps, many ideas come from myself or others to solve my own problems, and I enjoy the creation of creating ones.

On my position of being a developer, iOS, it's not good enough to stay in a silo. That's why being in a company is good too, you are surrounded by like-minded people. Well if you are solopreneur, chances you will work alone, with less human interaction, I heard this from Twitter. This guy said it's kind of depression with all work and no interaction, true story. I am lucky enough to have family that I always can talk and play with (my daughter).

But in work sense, being professional can be sometimes really boring especially when you are alone. Business is about helping others. So to be relevant, and keep relevant, I ongoing to join like-minded people of having interest in this technologies. iOS, Android, UI/UX, Laravel and React Native.

Previously I joined MY CocoaHeads community, it's an awesome iOS developer community. Usually held in KL area. I joined when it's usually held in Mindvalley, Bangsar. It's so important to mingle with local developers because they share things that happen in their companies. I am not in any company so you can't tell how valuable this kind of sharing right.

Life keeps going, and eventually, in Cyberjaya, there is also tech community called DevCon. Here is more diversified, there is a long list of techs enthusiast here. Mobile development is one of them. DevCon organized 3 big events so far, I had the chance to taught iOS app development. But recently, the number of iOS participant has been declining. Hmm, why iOS developer not so many? In the business sense, this is not even a good thing right. So I ask latest cross-platform React Native solution to take lead.

The result was the receptions was better than iOS, but on the other side Android reception as usual super large as usual. Next time around, no more Android but React Native for iOS and Android.

I will take lead for that. I actually seriously learn React Native for about a month now. The paradigm of real native and React Native is different. I take some time to understand it. I still need to refer to previously written project to write a new one. Especially on Redux topic.

I will write what I have learned during 1 month of learning React Native. And will present on next meetup.

Alrite, for summary, L, logistics is the key element to drive your self forward towards living your dream. You cannot live in a silo, find good people, find good community to join, be participative and live well.

Alrite, that from me. See you on next post on what I learn with React Native.





Thursday, 8 March 2018

User Journey Diagram & Use Case Flow

Hello gang,

This is Hijazi. I will write on user journey diagram and the use case diagram.

On app or system development industry. Development skill is important to make sure that we can make things materialized or workable. Not just on paper. But now we have to put our capabilities on paper. We know we can do it, but we have to step backward to oversee what we will make.

By planning ahead we can see the birds-eye-view of how everything working together. We can plan what classes that we need before we go into UI details.

Another thing is the use case diagram. We cover the most important aspect of the software when it's used with multiple roles. This will show what's each role will do, what system will keep and what it will notify another parties and so on.

From that, we can list down what kind of technologies we will use on this project.

OK guys. If you ever have question shout out at twitter @hijz alrite. I will continue to write next time.

Cheerios.




Sunday, 4 March 2018

ReactNative II

Hey guys,

It's me again Hijazi from iReka.

I would like to further talking about React Native. I have been studying since last 2 weeks in-depth.

ReactNative (RN) is pretty damn different paradigm than developing with native development with Xcode or Android Studio.

RN is based on ReactJS, a JavaScript library for web development, open sourced by Facebook.

RN was open sourced in 2015, at first only iOS, then support Android later that year.

The development wise is pretty hacky, have many gotchas, inconsistence, some devs I heard fed up with it. It's pretty immature in some case.

Yet on the positive side, it's pretty cool and awesome tech that can support both iOS and Android with same code base. Of course with little modification for each platforms.

So, it's not straight forward, the resource is not many, and can be confusing.

There are ways to make the app proper with some libraries like react-navigation, react-native-router-flux and also react-redux.

Redux concept is quite new for me. Hmm. How to say. It's a state management throughout the app. It has store, actions, reducers and states.

Let me give a little brief about redux. One app has a store which is an overall container of the engine. There are reducers with action's type and payload. Reducers has the functions return the result. There is action for prepare to sending to reducers, it store the action and payloads. Store will 'dispatch' the action into the reducer to generate new 'state'.

Well, Redux is kind of different way of thinking the flow inside app. And using Redux, is make the app one directional. It's actually easy understand when doing. Just read the stuff might does not make sense so much.

OK, hopefully i can do some screencasting on how redux or RN works. But for now I will learn more about RN through out this year.

Till, then. Take Care.
Hijazi





State of Wordpress: Elemento

Hey guys, As you might know, Wordpress is number one CMS in the world. Because of its popularity and openness, developers around the world...