Search Results
737 results found with an empty search
- FREELANCING WEBSITE DESIGN
FREELANCING WEBSITE DESIGN INTRODUCTION : - As a former freelance web developer, I learned how it’s difficult for a freelance web developer (especially if junior) to find good projects online. The main problem I experienced is that on Freelance Marketplaces there are usually poor descriptions like “Simple website – We are looking for a web developer for a simple website in clothing industry”. For developers it’s not easy to understand the real size and complexity of the project to make a right price quotation. My goal with this research was to understand if the problem was only mine, or if other developers have this problem too. After that, I managed to design a developer-friendly freelancer marketplace, to simplify the process of pricing evaluation. Research Research Goals I wanted to learn how freelance developers look for clients and jobs online right now. In particular, on those who use freelancer marketplace but are not completely satisfied about it. My goal was to understand if developers are interested in a platform to simplify the research of projects they could work on and make better price quotations. Study 1: User Interviews 5 participants, Freelance Web Developers who: Are looking for new clients/projects Do not invest a lot of time in personal branding or networking Know at least one freelance marketplace I used the interview script as a guide and ask follow-up questions based on answers from the users Study 2: Survey This study focused on better understanding users needs related to online job research for Freelance Web Developer. In addition, I collected data to understand which percentage of users currently makes a bid on projects they look. Research questions How can freelance marketplace better support freelance developers when looking for projects? Which functions/features users like in the freelance marketplaces they currently use? Which other functions/features would they like to have? Research Results Key Findings Users need a deep understanding of the project Users would like to see a clear distinction between client and professionist areas Users use mainly desktop devices to visit freelance marketplaces Recommendations The idea was to design a web platform similar to Behance of Dribble where UI Designer and Agencies can upload their project with mockups/prototype and explain the better as possible the functionalities of the website/app they need to be developed. In this way, developers can send a price quotation for coding these projects having more information. Next Steps The app will be designed with a desktop-first approach The browser app will have a clear distinction between the section dedicated to pricing offers (Freelance) and the section dedicated to the projects uploading (clients) Developers will see a link where they can see the mockup or prototype of the project (uploaded on InVision, Marvel, Figma, etc.). In this way, the developer will be able to see the required functions of the website/app, user workflow, and graphic style guides The single project page will provide additional standardized info: programming language/framework required, Device and browsers required compatibility Brainstorming and prioritizing features After collecting data and insights with User Research, I brainstormed to come up with Feature ideation. After that, using Complexity vs Value model, I identified priority features. Low-Fidelity Prototype Based on my sketches I developed low | mid fidelity interactive prototype Prototype functionalities Users can open a Mockup or Prototype in an external source (eg. InVision, Figma, MarvelApp, etc.) Users can Make a Bid (the money request to develop the project) Usability test An usability test was useful to quickly understand if my idea of functionalities was sustainable or not. As often happens, most of the features needed improvements Low Fidelity Prototype – Iteration Based on Usability Test results, I iterated my design and improved it. High Fidelity Design Design System After the iteration on Low Fidelity Prototype, I started working on Design system. So I looked for inspiration and then I created Style Guides and Design Pattern. 1st Prototype Version Based on Low-Fidelity Prototype, Style Guides and Design Pattern, I created a first version on High Fidelity Design of Single Project page. Accessibility improvements Working on the accessibility of the project design, I found out three possible improvements: Include an error message with an icon (in addition to red subline) for display input errors. This will help people affected by Deuteranopia, Protanopia, and Achromatopsia to better understand the error (as they can’t clearly recognize red color) Increase button size. This will help people to click on the right button, in particular in mobile navigation. Increase paragraph font size. Increasing the font size of the paragraph will help people with low vision to better see the description text. I reported improvements on the Figma frames and placed them side by side in a new frame called “Accessibility Improvement” to show the improvement. Usability Tests I used Look Back to test my Final design with remote unmoderated sessions. After that, I choosed a Kpi, decrease time on task to iterate and improve my design. The hypothesis I formulated is that Users want to have separate flows for Making a Bid and for Writing a message to the client. I used these insights to improve the Single Project page: 7 out of 11 participants didn’t try to compile the “(Optional) Write a message to the client” field in “Make a bid modal” 8 out of 11 of users spent time to think what to write in “(Optional) Write a message to the client” input field 4 out of 11 participants asked for the possibility to write to the client before making a Bid P4 said “I won’t Make any Bid if I don’t understand the project. I would like to send a message to the client before making a bid, to ask additional information or schedule a call” Iteration and final design I used Look Back to test my Final design with remote unmoderated sessions. After that, I choosed a Kpi, decrease time on task to iterate and improve my design. The hypothesis I formulated is that Users want to have separate flows for Making a Bid and for Writing a message to the client. I used these insights to improve the Single Project page: 7 out of 11 participants didn’t try to compile the “(Optional) Write a message to the client” field in “Make a bid modal” 8 out of 11 of users spent time to think what to write in “(Optional) Write a message to the client” input field 4 out of 11 participants asked for the possibility to write to the client before making a Bid P4 said “I won’t Make any Bid if I don’t understand the project. I would like to send a message to the client before making a bid, to ask additional information or schedule a call” CONCLUSION : - Freelancing is a very exciting way to earn better money. It allows a person to decide his own schedule, the type of task he likes to work on, and how much he wants to work. Its benefits are much more than its drawbacks. A very important phrase, if you have a will you are definitely going to find a way. If you really want to do it. One just needs to be fair and flexible with dealings and he will definitely get the reward in return. Hire Figma Experts for any kind of projects – urgent bug fixes, minor enhancement, full time and part time projects, If you need any type project hep, Our expert will help you start designing immediately. T H A N K Y O U ! !
- S U R V E Y A P P
INTRODUCTION : - Survey software provides a platform on which companies can design and manage electronic surveys. These platforms then attract respondents and collect and analyze survey results. Survey software provides customized questionnaires. Companies can choose types of questions and modify surveys for their needs. Different companies use surveys for different reasons. Survey software saves feedback in a database in real time when respondents answer questions. This reduces the risk of losing data and makes managing surveys easy. Online surveys are flexible, so companies can change parts of a questionnaire after they’ve started collecting responses or even retarget a survey. The goals There are a lot of elements to make a survey successful. But at the end of the day, all that matters is how to make a user willing to take the survey and committed to complete it. The survey has to be enjoyable in order to capture the optimal result that can be used for making a better business decision. So I decided to design an app that would: Catch a user’s emotion and feedback quickly Make a user complete the survey with minimum effort & pain Design the least annoying approach to ask user to take the survey Design a custom format and mixed it with the traditional survey knowledge. This led me to achieve 2 main goals. 1st goal: Make the user willing to take the survey. 2nd goal: Design the survey for user so they can fill it out with minimum effort. Understanding the user Okay, everyone knows that no one is really interested in “helping” the company to be better — matter of fact. People are busy and are getting bombarded with a lot of notifications and emails. So, it is important to play this nicely and gently. Know the timing The first thing that I stressed on is to finding the best time to send out the survey. I have to find a sweet spot when the user is happy and excited; therefore they have more willingness to at least take the survey. It‘s important not to sending out the survey to a new user that never experienced the product at all. From my point of view, a user who has been using our app for 2–4 times would have thoughts on what they were wishing to improve. And hopefully, users are experiencing a positive experience which will build more willingness to take a survey. Ask gently As you may have experienced before, pop-up are total crap. So, my next question would be what is the least annoying approach to ask user for take our survey? No matter what you ended up doing, some of your user will still get annoyed. I explored many approaches, but I ended up with one winner at the time being. I would call it the “chameleon” method — basically the request UI has to blend within the interface naturally. Unlike the pop-up method, this won’t require user any immediate action from the user. It’s there, and user will apparently take or reject it whenever they are ready. The exit scenario Everyone makes mistakes, and there are a times where we mess up and we have to apologize to our users. If this is happens, instead of throwing the survey to an angry customer we can just ask for a simple feedback on what’s happening. Incentivise the user An additional point to encourage user is to give them a reward simply because they spare their time to answer the survey which will give us great data to work with. In my case, we will give a 50% discount for the next transaction. I think this is the most debatable topic — whether or not we should give the user an incentive. The risk is that users might not be honest with their answers and are just aiming for the reward. Either way, I still think a reward is important, but to reduce this risk, I wouldn’t give a huge reward — on the other hand we cannot give a small reward, so we have to find a happy medium amount to keep things balanced, remember that we want users to feel appreciated. The design process What I aim for in the design is to create a delightful experience for the user. Creating low-fi prototype This time, I borrowed a traditional animation technique. I drew a quick interaction in Photoshop to get the general feeling. With this, I can eliminate some concepts that I don’t like and focus on getting the optimal result. My main focus is finding the best layout for each question type such as Multiple choice, Rate scale and Rating order. Designing the emotion As I mentioned in the title, I’m trying to capture user’s emotion. The idea is to ask user how do they feel about our main feature and let them express it with a simple answer. At the beginning, I thought it would be best to have 5 emotions to mimic the “Liker scale” with an answer: Extremely Happy, Happy, Neutral, Unhappy, Extremely Unhappy. I could be wrong, but when I put myself as the user with these options — it’s a little bit overwhelming, I mean... how can I tell the difference between extremely happy versus happy? In order to make this simple and straightforward, I decided to just have three obvious options such as: Unhappy (Angry face) Neutral (Flat face) Happy (Happy face) Bring the emotion to life After many exploration stages, I wanted to ask about important features such as our customer support relationship. I created these subtle animated emoticons to help user easily choose how they feel about our Support line. On top of that — I want to understand why they feel that way. The first thing that crossed my mind was to provide a text-field where the user could type their reason. However, I don’t think that will be convenient for the user. Below are the dos & don’ts and my assumptions. Do(s): One question per page — Don’t make your user scroll up and down, that’s just annoying. Consider the touch-space — Optimize the space, don’t annoy your user by having them perform taps that accidentally miss the answer. It’s all about making a delightful experience. Keep it under 8 questions — Most of the expert recommends say to keep things short. I think under 8 questions would be ideal. It’s better to optimize a small number of questions and make them really count. Don’t(s): Avoid drop-down — Drop down is never a good idea; displaying the options on the screen right away is much better. Avoid use matrix table — Don’t even think about it. Avoid use close-ended question — Don’t give your user with yes/no questions. Let your user express themselves as openly as possible. Avoid typing action — If possible, don’t make user type on mobile. It’s not a big deal, but I believe it might give you higher responses. Things to consider: Incentive — Many people agree that incentive is great and trigger user’s willingness. However, this is not always true. You have to figure out your customer and look at the context before deciding to give rewards or not. Progress bar — It is true progress bar will let your respondent know how far done they are. However, if you have too many questions (which you should avoid anyway), consider not using progress bar since it might overwhelm your respondent. Use 3rd party surveys app — Many services out there provide a service to make in-app surveys. However, you might not be able to tweak the design too much. Find industry benchmark — Each industries’ response rate is different, try to find the ideal response rate in your industry for benchmarking. Hire Figma Experts for any kind of projects – urgent bug fixes, minor enhancement, full time and part time projects, If you need any type project hep, Our expert will help you start designing immediately. T H A N K Y O U ! !
- Setup BigQuery In Google Cloud Platform
This prject will give you some experience with Google BigQuery and analytical SQL queries. We will be using public datasets from NYC OpenData, a repository of free and public datasets provided by the city, from the city government’s agencies. In particular, we will be creating a data warehouse storing five tables, each uploaded from a different public dataset that concerns NYC Public Schools. You will need: Internet access, a coupon code for GCP (which you should have retrieved during assignment 0 before class began), and a GCP account (which you should have retrieved during assignment 0 before class began). Please read through this assignment and make sure you have these three requirements EARLY. Contact me if you have any trouble! Setup: First, sign in to GCP, create a new project, and enable BigQuery. Please name your project dw-hw1- (for example, mine would be dw-hw1-erm). Enable Bigquery If you don't already have a google account (Gmail or Google Apps). you must create one. Sign in google plateform console (console.cloud.google.com) and navigate to BigQuery, You can also open the BigQuery web UI directly by entering the following URL in you browser. https://console.cloud.google.com/bigquery Accept the term of services. Before you use the BigQuery, you must create a project, follow the prompts to create your new project. The project Id is a unique name across all google cloud projects, It will be referred to later in this codelab as Project_id. Next we’re going to load 5 tables into our dataset. In the lefthand sidebar, click on your project name and dataset name, so that you see a view like this: In the navigation bar in the middle of the righthand side of the page, which says “data-warehousing-for-analytics:hw1” in the example image above, click “create table”. You will see a pop up menu like below: select “Google Cloud Storage” as the data source. C o p y t h i s G o o g l e C l o u d S t o r a g e ( G C S ) b u c k e t o b j e c t l i n k i n t o t h e “ S e l e c t f i l e f r o m G C S b u c k e t ” i n p u t l i n e : g s : / / a n a l y t i c a l _ s q l _ h o m e w o r k / 2 0 1 8 - 2 0 1 9 _ D a i l y _A t t e n d a n c e . c s v Under “Table name”, put Daily_Attendance And check the box that is labeled “auto detect” to enable auto-detection of the schema of the table. Then click “Create table” to begin the import job. In a moment, the data will be copied from the public GCS bucket where the example data is stored (I put it there, it is a dataset open to the public) into your BigQuery instance. You can inspect the table by going to the lefthand sidebar in the BigQuery UI, expanding the project name, expanding the dataset name, and clicking on the table name. It will look like this: You should see the table schema (at this point, you will only have one table). Run a query like: select * from hw1.Daily_Attendance limit 1; to test that your data was imported correctly. Now, repeat the same steps for the rest of the five tables for this dataset: Open the NYC Open Data link provided in the table above to inspect the data dictionary provided for each of these data sets. This will give you an idea of what each table holds You can contact us for: BigQuery Project Help BigQuery Practice Exercise BigQuery Tutorial BigQuery Homework Help Other services related to BigQuery Google Cloud Plateform Send your query and get instant help at: contact@codersarts.com
- Key Cave Adventure Game Using Python
Gameplay Key Cave Adventure Game is a single-player dungeon-crawler game where the player adventurously explores a dungeon. The objective is for the player to find the key and get out of the dungeon through the door. This game is full of adventure. The game play utilises simple key commands. The positions of Entities are always represented as (row, col). The game’s grid should always be a square. Commands Table 1. List of valid actions. Input Action ‘-DIRECTION-’ Direction to move in ‘I -DIRECTION-’ ‘I W’ would investigate the Entity in the given direction. ‘H’ Help text (see examples at end) ‘Q’ Quit Table 2. List of valid Directions. Input Direction ‘W’ Up ‘S’ Down ‘A’ Left ‘D’ Right Table 3. List of characters used in the game Character Description ‘#’ WALL ‘O’ PLAYER 'K' KEY 'D' DOOR ‘ ’ SPACE The Player can move within the dungeon by using any of the valid direction inputs outlined in Table 2. The Player must collect the KEY by walking into it and then the DOOR can be unlocked. Game over The Player wins the game by collecting the KEY and heading to the DOOR. This message should display: You have won the game with your strength and honour! If the Player runs out of moves before they collect the KEY and unlock the DOOR then the Player loses the game. This message should display: You have lost all your strength and honour. The player loses a move count when they: Successfully moving to a new position. Unsuccessfully moving to a new position. E.g. The new position is a Wall. Investigating an Entity in a given direction As seen in the Example game play. Getting Started Files a2.py - file where you write your submission gamen.txt - the nth dungeon layout. There will be multiple provided. “game1.txt” is the best one to start from To start, download a2_files.zip from Blackboard and extract the contents. This folder contains all the necessary files to start this assignment. You will be required to implement your assignment in a2.py. Do not modify any files from a2.zip except a2.py. The only file that you are required to submit is a2.py. Some support code has been provided to assist with implementing the tasks Classes Many modern software programs are implemented with classes and this assignment will give you some practice in working with them. The class structure that you will be working with is shown diagrammatically in Figure 1. In Figure 1 an arrow with a solid head indicates that one class stores an instance of another class. (This is analogous, say, to a list storing instances of strings within it, say, sample_list=[‘dog’, ‘cat’]). In Figure 1, for example, GameApp points to Display meaning that GameApp contains an instance of Display. An arrow with an open head indicates that one class is a subclass of another class. I.e. one class inherits from another. E.g. Item is a subclass of Entity. You can add classes to reduce code duplication. This can include adding your own private helper methods. However, you must include the classes outlined below Entity A generic Entity within the game. Each Entity has an id, and can either be collided with (two entities can be in the same position) or not (two entities cannot be in the same position.) The collidable attribute should be set to True for an Entity upon creation. Entity should be constructed with Entity(). Entity should have the following methods defined: get_id(self) -> str: Returns a string that represents the Entity’s ID. set_collide(self, collidable: bool): Set the collision state for the Entity to be True. can_collide(self) -> bool: Returns True if the Entity can be collided with (another Entity can share the position that this one is in) and False otherwise. __str__(self) -> str: Returns the string representation of the Entity. See example output below. __repr__(self) -> str: Same as str(self). Examples >>> entity = Entity() >>> entity.get_id() 'Entity' >>> entity.can_collide() True >>> str(entity) "Entity('Entity')" >>> repr(entity) "Entity('Entity')" >>> entity = Entity() >>> entity.can_collide() True >>> entity.set_collide(False) >>> entity.can_collide() False (Note that Entity should never be set to False, this is just an example) Wall A Wall is a special type of an Entity within the game. The Wall Entity cannot be collided with. Wall should be constructed with Wall(). Wall should have the following methods defined: get_id(self) -> str: Returns a string that represents the Wall’s ID. set_collide(self, collidable: bool): Set the collision state for the Wall to be False. can_collide(self) -> bool: Returns True if the Wall can be collided with and False otherwise. __str__(self) -> str: Returns the string representation of the Wall. See example output below. __repr__(self) -> str: Same as str(self). Examples >>> wall = Wall() >>> wall.get_id() '#' >>> wall.can_collide() False >>> str(wall) "Wall('#')" >>> repr(wall) "Wall('#')" >>> wall.set_collide(True) >>> wall.can_collide() True (Note that Wall should never be set to True, this is just an example) Item An Item is a special type of an Entity within the game. This is an abstract class. By default the Item Entity can be collided with. Item should be constructed with Item(). Item should have the following methods defined: get_id(self) -> str: Returns a string that represents the Item’s ID. set_collide(self, collidable: bool): Set the collision state for the Item to be True. can_collide(self) -> bool: Returns True if the Item can be collided with and False otherwise. on_hit(self, game: GameLogic): This function should raise the NotImplementedError Examples >>> game = GameLogic() >>> item = Item() >>> item.can_collide() True >>> item.on_hit(game) Traceback (most recent call last): File "", line 1, in item.on_hit(game) File "/Users/.../a2.py", line 75, in on_hit class Item(Entity): NotImplementedError >>> str(item) "Item('Entity')" >>> repr(item) "Item('Entity')" Key A Key is a special type of Item within the game. The Key Item can be collided with. Key should be constructed with Key(). Key should have the following methods defined: get_id(self) -> str: Returns a string that represents the Key’s ID. set_collide(self, collidable: bool): Set the collision state for the Key to be True. can_collide(self) -> bool: Returns True if the Key can be collided with and False otherwise. on_hit(self, game: GameLogic) -> None: When the player takes the Key the Key should be added to the Player’s inventory. The Key should then be removed from the dungeon once it’s in the Player’s inventory. (hint: Move onto the Player and GameLogic class and come back to this when they are partly implemented.) __str__(self) -> str: Returns the string representation of the Key. See example output below. __repr__(self) -> str: Same as str(self) Examples >>> key = Key() >>> key.get_id() 'K' >>> key.can_collide() True >>> str(key) "Key('K')" >>> repr(key) "Key('K')" (below are example of the on_hit() method) >>> game = GameLogic() >>> game.get_game_information() {(1, 3): Key('K'), (3, 2): Door('D'), (0, 0): Wall('#'), (0, 1): Wall('#'), (0, 2): Wall('#'), (0, 3): Wall('#'), (0, 4): Wall('#'), (1, 0): Wall('#'), (1, 2): Wall('#'), (1, 4): Wall('#'), (2, 0): Wall('#'), (2, 4): Wall('#'), (3, 0): Wall('#'), (3, 4): Wall('#'), (4, 0): Wall('#'), (4, 1): Wall('#'), (4, 2): Wall('#'), (4, 3): Wall('#'), (4, 4): Wall('#')} >>> player = game.get_player() >>> player.get_inventory() [] >>> player.set_position((1,3)) >>> key.on_hit(game) >>> player.get_inventory() [Key('K')] >>> game.get_game_information() {(3, 2): Door('D'), (0, 0): Wall('#'), (0, 1): Wall('#'), (0, 2): Wall('#'), (0, 3): Wall('#'), (0, 4): Wall('#'), (1, 0): Wall('#'), (1, 2): Wall('#'), (1, 4): Wall('#'), (2, 0): Wall('#'), (2, 4): Wall('#'), (3, 0): Wall('#'), (3, 4): Wall('#'), (4, 0): Wall('#'), (4, 1): Wall('#'), (4, 2): Wall('#'), (4, 3): Wall('#'), (4, 4):Wall('#')} Output: If you need complete solution of this game then send your details at below id: contact@codersarts.com
- PORTFOLIO WEBSITE DESIGN
INTRODUCTION : - For most freelancers and newbie design owners, their most powerful marketing tool will be their portfolio. A portfolio is simply a collection of samples of your work that you use to demonstrate to clients that you have the experience and competence to handle their projects. PURPOSE : - When it comes to creating an impressive UX portfolio, it’s important to understand exactly what your portfolio should achieve. What information should your portfolio present? What do you want people to learn about you and your work when they land on your portfolio? Your UX design portfolio is not just a virtual gallery of all your most beautiful work. It’s a carefully crafted story that offers a behind-the-scenes look at your methods and processes. How do you tackle different UXdesign challenges? What’s your approach to solving problems? Are you user-centric? It should introduce you as a designer and give the viewer an understanding of how you work. And, of course, all of these insights should come gift-wrapped in a visually engaging, user-friendly package. With that in mind, let’s take a look at our selection of nine amazing UX design portfolios from around the web. As there are an awful lot of disciplines, it’s impossible to define the “perfect portfolio”—wide variances exist between disciplines—but there are some good general guidelines for creating a portfolio: Select Your Best and Most Relevant Work Many portfolios are simply a mixed bag of work that the business owner has created over the course of his or her career. These are, generally, not terribly effective at winning work. Clients want to see your best work and, more importantly, they want to see work that’s relevant to them. If you don’t have a relevant sample or two, you have a couple of options. The first is to create a relevant sample. You don’t have to have sold a piece in order to develop one – for writers, illustrators, graphic designers, etc., this can often be a pretty useful investment of time—assuming you’re going to target similar work in the future. Here’s an example of a design portfolio site – it’s all about grabbing the attention and getting over a key message to customers. The second is to show how the same skills have been used in the sample as the client requires in their project. If you’re a logo designer, you’re a logo designer. Creating a logo for a bank requires the same creative process as creating a logo for a mining company. This is true in many professional fields; the skills used to create a less relevant sample are exactly the same as those used to create a sample of perfect relevance. Annotate samples to show this relevance. The more you spell something out for a client, the more likely they will understand this. Breaking This Rule If you want to include a portfolio for download from your website or from a freelance working site or as general marketing material—you can skip the “relevant” and just create a portfolio of your best work. Sometimes, it’s impossible to be all things to all people, and we have to make compromises. General marketing with no specific audience is one of the times we make those compromises. However, even when carrying out general marketing, you should have some kind of target group to reach out to. You are still not addressing and reaching out to everybody. You can cut to the chase on your portfolio, too. If you do two things well… tell your customers about it. And show it in the design of your portfolio. Don’t Go Overboard As I’m sure you know, everyone is busy today. The last thing you want to do is send a client a portfolio consisting of every relevant thing you’ve done in a single field when that consists of dozens of projects or more. Keep your portfolio focused with no more than four short pieces or two long pieces of work. Let your best work do the talking. You can always send more information if a client requests it (and in most cases they won’t – unless they have a specific concern). Tell a Story with Your Work Samples are great, but they’re even better when they tell a story. Consider including things such as these in your story: What process did you use to create the work? Why did you choose that process? What did the work achieve for the client? (Return on Investment, market gain, cost savings, etc.) Social proof of achievement – client testimonials and even commentary from articles, images, etc. used online. Reviews from app stores or freelance sites. In essence, explain the project that the work was used on and the process you used to create the work, and show the results that it created. It’s much easier to understand people’s work in context than if you just dump a load of drawings or project reports on someone. Don’t be afraid to be creative with the way you display your portfolio and capture your story. This is doubly true if you’re a graphic designer – your portfolio really needs to catch the eye in that instance. Don’t Tell Lies It’s important that your portfolio is an honest representation of your own work. It has become fairly common for new freelancers to appropriate more experienced professionals’ work and present it as their own. This may win you business, but it’s also likely to get you fired pretty quickly. In some cases, it may result in your getting sued as well. Don’t waste your client’s time and money. Likewise, don’t waste your own time and money or take such a risk. The same goes for references presented in your portfolio; these should be verifiable and not nonsense that you’ve made up or had a friend make up to present to a client. Running an ethical practice may take a little more work at the beginning, but it pays off in the long-term. Clients need to be able to rely on you, and if they can’t—they will tell others about you. Research suggests that unhappy clients normally tell 16 times as many people about their experience than a happy client will. Once you have a reputation for dishonesty, you may never be able to shake that reputation off. Is There Anything I Can’t Include in a Portfolio or Case Study? A lot depends on the agreements you have with your clients. Many freelancers and design agencies grant their clients a license to their work. In that case, you can use any of your work in your portfolio. However, many others surrender all their intellectual property to their clients at the point of payment—in those instances, you will need your clients’ permission to use their work in your portfolio. It is ethically a good idea, whether you control the intellectual property or not, to inform a client if you intend to use their work in your portfolio. If you intend to use the client as a reference, you must ask their permission before doing so. What if a Portfolio Isn’t Right for Me? There are professions in which a portfolio may not be the right way to present your work to a client. For example, programmers are not going to want to send pages of code to a client – who may not even have the technical experience to decipher that code. In that case, you may want to use case studies instead. A case study is simply a description of the work you undertook, the results and any available references from your client or social proof. In essence, it’s a portfolio but without an example of the actual work included. Don’t Be Afraid to Create Multiple Portfolios or Case Studies Early in your practice as a business owner, you may find that a single portfolio or case study is perfect for targeting a particular kind of client; however, as you progress with your business, you are likely to end up branching out into other skill sets and other industry verticals. In those instances, don’t be afraid to create additional portfolios or case studies as necessary. The best portfolios and case studies are targeted and tailored to a very specific client group. You’re not limited to a single portfolio or case study in any way. What If My Written English Isn’t that Great? Actually, this can apply to any language you’re trying to win work in. If you’re not the world’s greatest writer, you struggle with spelling and grammar, or any other area of the written word—you’d be well advised to find someone who can help with this. You may be able to find a friend who will check over your portfolio for free, or you may need to hire another freelancer to do it. Upwork is a great place to hire a highly qualified freelance copywriter for a reasonable amount of money. Badly presented or written portfolios and case studies will significantly impair your ability to win work. Clients are looking for professionals—and professionals communicate with their clients, in their language, to a high standard. Of course, perfection is unlikely—even top authors like Stephen King (who have a huge editing team at their disposal) don’t achieve perfection (there are always typos and minor errors in any published book)—but your written material must be “good enough” and “99% perfect” if not even better. Clients love when you seek perfectionism in your portfolio as they know that this will also be the case when they hire you. If your spoken English is better than your written English, you could always create a video portfolio and talk rather than write… The Take Away Portfolios and case studies are powerful marketing tools for freelancers and design agencies. You will find that you create a portfolio to demonstrate your expertise to a client when responding to a request for proposal (RFP) or when marketing to a new client to create a need. You may also choose to use a more general portfolio as part of other marketing activities. Relevant portfolios which tell a story and which are well-written and presented offer the best chances of turning interest into investment. Don’t be afraid to have someone else review your portfolio for feedback. You may also, if they’re freely available online, want to review your competitors’ portfolios and see what they’re doing to win work. It’s OK to appropriate ideas from another portfolio, but it’s not OK to appropriate work itself or the wording used in someone else’s portfolio. Hire Figma Experts for any kind of projects – urgent bug fixes, minor enhancement, full time and part time projects, If you need any type project hep, Our expert will help you start designing immediately. T H A N K Y O U !
- Mega Menu Using Django And Bootstrap
In this we will add mega menu in nav bar of home page of our web application using Django and bootstrap. Below the working steps which need to do First install pycharm editor which is better and no need to create virtual environment. Step 1: First install Django: Open pycharm terminal and run below command (venv) D:\Django projects>pip install Django Step 2: After installing django creating the project using below command (venv) D:\Django projects> django-admin startproject createmegamenu Chang directory and go to project directory using "cd createmegamenu" (venv) D:\Django projects> cd createmegamenu Now you move on current project directory: (venv) D:\Django projects\createmegamenu> Step 3: Run project on to the local server (venv) D:\Django projects\createmegamenu>python manage.py runserver Output: Watching for file changes with StatReloader Performing system checks... System check identified no issues (0 silenced). You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions. Run 'python manage.py migrate' to apply them. September 22, 2020 - 14:32:20 Django version 3.1.1, using settings 'SocialPost.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CTRL-BREAK. When you click on generated 127.0.0.1:8000, you switch to the browser and see rocket symbol that means your project run successfully. Step 4: Creating app : navbar After creating the project we need to create an app, app may be one or more in single project. (venv) D:\Django projects\createmegamenu>python manage.py startapp navbar Go to the settings.py in project and add the project name: createmegamenu/settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'navbar', ] Now you go to add code in app : navbar navbar/urls.py from django.urls import path from . import views urlpatterns = [ path('', views.home, name='home'), ] navbar/views.py from django.shortcuts import render def home(request): return render(request, 'index.html', context=None) Now next we include the app urls.py in project (urls.py) file: createmegamenu/urls.py from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('post.urls')), ] After this creating templates in app(navbar) directory which has all html(index.html) files: Add this bootstrap code in this index.html file to create the mega menu: navbar/templates/index.html {% load static %} {% load static %} Home Products Categories SoftwareDesktopMobileTabletHardwareArduinoRaspberry PIVoCoreBanana PI Nano-TechAFMSTMNano-TubesNano-WiresMaterialsA.I.Artificial Intelligence SaaSOn-DemandNo SoftwareCloud ComputingOn-PremiseData CenterHosting EnvironmentInternal IT Server-SidePHPJavaPythonRubyColdFusionASP.NETGOPerlLasso Services Web DesignHTML5CSSJavaScriptWeb DevelopmentWebsitesMobile AppsResponsiveWeb Apps Graphic DesignPSDImagesLogosVertical variationDatabase DesignSingle button dropdowns UI/UX DesignUser InterfaceUser ExperienceWeb DesignersDigital MarketingPaidSocialContent Marketing Project ManagementInitiatingPlanningExecutingMonitoringControllingClosingPM SystemsBest PracticesProject Manager Adding Static files for design menubar: first check project(settings.py) has below one line of code in bottom, if not then add below code at the bottom of settings.py in project(createmegamenu) # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/3.1/howto/static-files/ STATIC_URL = '/static/' After this creating another directory static in app(navbar) directory, which contains all the static files like css, javascript, image, etc. navbar/static/style.css .navbar-brand>img { padding-top: 11px; width: 130px; margin-left: 60px; } .navbar-brand { height: auto; margin: 0; padding: 0; margin-right: 20px; } .navbar-default{ color: #fff; background-color: #2F4F4F; border-color: #000000; } .navbar-default .navbar-nav > li > a{ color:#fff; } .navbar-default .navbar-nav > .dropdown > a .caret{ border-top-color: #fff; border-bottom-color: #fff; } .navbar-default .navbar-brand{ color:#fff; } .menu-large { position: static !important; } .megamenu{ padding: 20px 0px; width:100%; } .megamenu> li > ul { padding: 0; margin: 0; } .megamenu> li > ul > li { list-style: none; } .megamenu> li > ul > li > a { display: block; padding: 3px 20px; clear: both; font-weight: normal; line-height: 1.428571429; color: #333333; white-space: normal; } .megamenu> li ul > li > a:hover, .megamenu> li ul > li > a:focus { text-decoration: none; color: #262626; background-color: #f5f5f5; } .megamenu.disabled > a, .megamenu.disabled > a:hover, .megamenu.disabled > a:focus { color: #999999; } .navbar-default .navbar-nav>li>a:focus, .navbar-default .navbar-nav>li>a:hover { color: #00A7E8; } .megamenu.disabled > a:hover, .megamenu.disabled > a:focus { text-decoration: none; background-color: transparent; background-image: none; filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); cursor: not-allowed; } .megamenu.dropdown-header { color: #428bca; font-size: 18px; } @media (max-width: 768px) { .megamenu{ margin-left: 0 ; margin-right: 0 ; } .megamenu> li { margin-bottom: 30px; } .megamenu> li:last-child { margin-bottom: 0; } .megamenu.dropdown-header { padding: 3px 15px !important; } .navbar-nav .open .dropdown-menu .dropdown-header{ color:#fff; } } navbar/static/script.js $(document).ready(function() { jQuery(document).ready(function(){ $(".dropdown").hover( function() { $('.dropdown-menu', this).stop().fadeIn("fast"); }, function() { $('.dropdown-menu', this).stop().fadeOut("fast"); }); }); } Now need to run it using below command: Run project on to the local server (venv) D:\Django projects\createmegamenu>python manage.py runserver And Get output like that: Contact us to get any Django assignment help: contact@codersarts.com
- Android Animation | CodersArts
In Android animation I have implemented animation on that animation I have set scales of animation scaleX,ScaleY, view animate set Duration how much time we can see the animation. void OnAnimationStart void OnAnimationEnd void OnanimationCancel void OnanimationRepeat In this animation we have to see decreasing when Animation Going To end. there is countdown is working for 30 sec. Animation Code : private void playAnim(final View view, final int value, final int viewNum) { view.animate().alpha(value).scaleX(value).scaleY(value).setDuration(500) .setStartDelay(100).setInterpolator(new DecelerateInterpolator()) .setListener(new Animator.AnimatorListener() { @Override public void onAnimationStart(Animator animation) { } @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) @Override public void onAnimationEnd(Animator animation) { if(value==0) { switch (viewNum) { case 0: ((TextView)view).setText(questionList.get(quesNum).getQuestion()); break; case 1: ((Button)view).setText(questionList.get(quesNum).getOptionA()); case 2: ((Button)view).setText(questionList.get(quesNum).getOptionB()); case 3: ((Button)view).setText(questionList.get(quesNum).getOptionC()); case 4: ((Button)view).setText(questionList.get(quesNum).getOptionD()); } if(viewNum!=0) ((Button)view).setBackgroundTintList(ColorStateList.valueOf(Color.parseColor("#FFFF00"))); playAnim(view,1,viewNum); } } @Override public void onAnimationCancel(Animator animation) { } @Override public void onAnimationRepeat(Animator animation) { } }); } } Hire an android developer to get quick help for all your android app development needs. with the hands-on android assignment help and android project help by Codersarts android expert. You can contact the android programming help expert any time; we will help you overcome all the issues and find the right solution. Want to get help right now? Or Want to know price quote Please send your requirement files at contact@codersarts.com. and you'll get instant reply as soon as requirement receives
- Transfer Learning for NLP
At one point of time in life, we have all wondered whether there will come a day when machines would be able to hold a conversation with humans entirely on their own. It has been portrayed in a lot of movies like Iron man, Terminator series etc. where a machine can speak and understand any human language. A lot of science fiction books and cartoons also fantasize this idea. Wouldn’t it be nice if Chitti ( movie: Robot, 2010), Jarvis ( movie: Iron man), Optimus Prime ( movie: Transformers), Doraemon etc., were a real thing? This notion has been around for quite some time now. Is it realizable? Today we will discuss about the possibility of achieving such a feat. The research towards making machine capable of having conversations began in the 1950s. This is when the idea of artificial intelligence was first introduced. It was Alan Turing who explored the possibility of AI and suggested that like humans, machines can also make use of the available information and reason to solve problems and make decisions. In his paper COMPUTING MACHINERY AND INTELLIGENCE, Turing laid down a framework for building machines and testing their intelligence. Initially scientists were able to make machines respond via text to answer certain predefined questions. Gradually, they were able to get the response in various other forms such as voice, gesture etc. but the scope of the machine's response was limited to predefined set of questions (or rules) only. If a user asked a question which wasn't pre-programmed into the machine, then the machine failed to provide a response. Now we have come a long way. Compared to back then, today we have made a tremendous progress in the field of Artificial Intelligence. Unfortunately, we still haven't produced a machine which can talk in any language perfectly. The main reason behind this is the complexity of the language. With the power of machine learning and Natural Language Processing (NLP), we may be able to teach the human language to our machines. Natural Language Processing (NLP) Let us first briefly discuss what NLP is: It is a branch of artificial intelligence that helps machine to understand, interpret and manipulate human language. It converts the user input into sentences and words. It also processes the text through a series of techniques, for example, converting it all to lowercase or correcting spelling mistakes before determining if the word is an adjective or a verb. Natural Language Processing (NLP) comprises of the below steps: Tokenization –The NLP filters set of words in the form of tokens. Sentiment Analysis –The machine interprets the user responses to align with their emotions. Normalization –It checks the typo errors that can alter the meaning of the user query. Entity Recognition –The machine looks for different categories of information required. Dependency Parsing –The machine searches for common phrases that users want to convey. The main problem with training the machine learning models using NLP is that they remain domain specific. The model fails when it encounters unseen conditions. In simple words, a model needs to be trained every time to work with different data in order to perform accurately. Also, in real world problems, the data is not always available in sufficient amount, or the data may not be clean, this leads to a model which makes poor generalization (performing many tasks with one model). Training a model can take up from hours to days based on how large the data is, doing this is not cost-effective. To solve this problem, we want the model to learn from the past in order to deal with the conditions of the present, just like us humans. So, that we don't have to start from scratch each time. How can we do this? This is where Transfer learning comes in. Transfer Learning It is the ability to transfer knowledge from a pre-trained machine learning model to a new condition. To elaborate further, it is a process in which a model is trained on a large database and then that model is used to produce results for other relatable tasks. Advantages of transfer learning: It allows simpler training requirements Minimizes the use of memory space It allows considerably fast training of models i.e. it takes just a few seconds to train a model instead of hours and days. Why transfer learning in NLP? Many NLP tasks requires a common knowledge about a language, for example, structural similarities, linguistic representation etc., this can be achieved with transfer learning. Also. knowledge about syntax, semantics etc., from a model can be used to inform other tasks. Moreover, transfer learning helps to generalise the models on various target tasks and is thus desirable in NLP. Types of transfer learning in NLP: There are different types of transfer learning common in NLP; these can be broadly classified into three types based on: a) Whether the source and target settings deal with the same task; and b) The nature of the source and target domains; and c) The order in which the tasks are learned. As per Pan and Yang [2010], transfer learning can be mainly divided in to two main categories: transductive and inductive, which is further divided into domain adaption, cross-lingual learning, multi-task learning and sequential transfer learning. The following figure represents the same. Domain Adaptation: This is the most commonly used type in industries where we want to use a model trained on a task in a domain for another domain. It can be done with either no or minimal label data for target. Cross Lingual Learning: It enables us to compare words across different languages. It is important for tasks like translation and cross-lingual retrieval. But more importantly, these integrations can help us transfer knowledge from resource-rich to resource-poor languages by providing a common represent space. Types of alignments used to learn cross-lingual word integration/embedding: Word-level alignment: It uses dictionaries containing word-pairs in different languages. It is the most common approach and can also make use of other modalities like images. Sentence-level alignment: It uses sentence pairs which are similar to those used for making machine translation systems. They typically use Europarl corpus which is a sentence-aligned corpus of proceedings of European parliament. Document-level alignment: It requires parallel documents which have aligned translated sentences. As it’s rare to get such documents, comparable documents are used more often. Such data can be created using topics of Wikipedia and gathering data in different languages. Multi Task Learning (MTL): In general, models are trained for a specific task only. This limits the model to accomplish other relatable tasks. If the model is trained for dealing with multiple tasks then it will become more generalized by sharing representations for all relatable tasks. Training the model to deal with multiple tasks is called Multi Task Learning (also known as joint learning). The beauty of multi-task learning comes from using the same parameters for different tasks. Sequential Transfer Learning (STL): It involves transfer of knowledge with a sequence of steps where the source and target task are not similar. Here tasks are learnt in two stages. The first stage consists of pre-training the model on source data and the second stage includes training the source model for target task (also known as adaptation). The pre-training task is usually costly but is only performed once. The adaption task is usually faster as it acts like a fine-tuning step. STL is useful in three cases: Source and target task data is not available at the same time Source task has more data than the target task Adaptation to many target tasks is required It looks similar to MTL but is very different in the way knowledge transfer takes place. In MTL, both the source and target are trained together while in STL, first the source is trained and later target is trained. STL is the most popular technique at present. Some of the models used in transfer learning for NLP are: ELMo, BERT, ULMFiT, OpenAI Transformer. You can look them up. Let's summarize the methodology to achieve transfer learning: First and foremost the data on which the source model would be trained is acquired. Usually this dataset is very large. The source model is trained on this data, it is called pre-training. The pretrained model is modified to a target task ( adaptation). Since, pretraining the model on a large scale data is costly in terms of computation, it's best to use open-source models whenever possible. Although, if you need to train your own model then you should share it with the community. The only limitation in achieving a perfect model is the complexity of languages. A model trained on one language can't be used for another language because of the difference in grammatical formations. But, with the advancement in NLP and transfer learning the situation seems hopeful. In the coming years, AI driven robots which are perfectly able to speak in any language with complete comprehension may become a reality. To get any kind of assistance on the above mentioned topics feel free to leave us a mail at contact@codersarts.com
- How to Integrate Angular with Spring Boot
let us build a simple application how to integrate angular application with spring boot application. Here is the technology used for this application. Java 1.8 + Spring Boot (Back-end) Angular 8 + Node.js (Front-end) Spring Tool Suite (IDE) Visual Studio(IDE) Angular Component The page you see is the application shell. The shell is controlled by an Angular component named AppComponent. Components are the fundamental building blocks of Angular applications. They display data on the screen, listen for user input, and take action based on that input. Make changes to the application Open the project in your favorite editor or IDE and navigate to the src/app folder to make some changes to the starter app. app.component.html the component template, written in HTML. Welcome in Angular with Spring Boot Hello app.component.ts the component class code, written in TypeScript. import { Component } from '@angular/core'; import { AngularServiceService } from './angular-service.service'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { title = 'program1'; constructor(public service:AngularServiceService){ } clickFunction(){ console.log("button is working "); this.service.javaCall(); } } app.module.ts the main parent component app.module.ts import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { HttpClientModule } from '@angular/common/http'; import { AppRoutingModule } from './app-routing.module'; import { AppComponent } from './app.component'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, AppRoutingModule, HttpClientModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } angular-service.service.ts Services are a great way to share information among classes that don't know each other. In Angular, we might have scenarios where some code needs to be reused in multiple components. For example, a data connection that fetches data from a database might be needed in multiple components. This is achieved using services. This service will have the httpClient and will be responsible for calling HTTP GET requests to the backend Spring Boot application. In Angular, a service is written for any cross-cutting concerns and may be used by more than one components. import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; @Injectable({ providedIn: 'root' }) export class AngularServiceService { constructor(private http: HttpClient) { } javaCall(){ console.log(" services is working fine......."); this.http.get('http://localhost:8082/hello').subscribe( data=>{ console.log("sucess result"); } ); } } Integrate Spring Boot Application We will be creating a simple Spring Boot Application. Spring Boot default you can use to develop the application. Spring Boot provides many of them. The defaults contain the configuration that otherwise you would have needed to set up manually. For example, Tomcat is a widely used web container. By default, a Spring Boot web application uses an embedded Tomcat container. Right-click in the package explorer and select New -> Spring Starter Project as below. Before the introduction of Spring Boot, we have to add all these dependencies on our own and considering compatibility between different jar versions, it was really chaotic thing, but now we need not worry about it. Spring Boot takes care of all necessary dependencies. We just need to tell Spring Boot only at a high level that which kind of dependencies we want to add, just like in this case we told spring boot about adding Web dependencies and Spring Boot will add all web related dependencies along with other core dependencies. Following is how pom.xml of this project looks like : 4.0.0 org.springframework.boot spring-boot-starter-parent 2.3.4.RELEASE com.example program1 0.0.1-SNAPSHOT program1 Demo project for Spring Boot 1.8 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test org.junit.vintage junit-vintage-engine org.springframework.boot spring-boot-maven-plugin Program1Application.java Also, Spring Boot has added the following class, which acts as a starting point for the Spring Boot Application package com.example; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; @CrossOrigin @Controller @SpringBootApplication public class Program1Application { @RequestMapping("/hello") @ResponseBody void home() { System.out.println("call by angular"); } public static void main(String[] args) { SpringApplication.run(Program1Application.class, args); } } – The @SpringBootApplication annotation used at the class level above is basically equivalent to combined following three annotations : @Configuration @EnableAutoConfiguration @ComponentScan – From the main method of SpringToolSuiteProjectApplication, SpringApplication class’s run method is called. This method makes sure that Spring application’s applicationContext(the Spring Container) is initialized. Spring boot uses AnnotationConfigApplicationContext. Run the Spring boot Application Run the main method of SpringToolSuiteProject Application and you will notice that jar is automatically deployed to embedded Tomcat server and Tomcat server has been started at port 8082. Check Console log of eclipse: Run Angular application ng serve -o
- Introduction About Firebase | Firebase Project Help
What is Firebase? The Firebase Command Line Interface (CLI) Tools can be used to test, manage, and deploy your Firebase project from the command line. Deploy code and assets to your Firebase projects Run a local web server for your Firebase Hosting site Interact with data in your Firebase database Import/Export users into/from Firebase Auth To get started with the Firebase CLI, read the full list of commands below or check out the documentation. Installation Firebase installation is different as per different operating system: Installation in windows Firebase CLI is install in windows using two methods: standalone binary npm standalone binary To download and run the binary for the Firebase CLI, follow these steps: Download the Firebase CLI binary for Windows. Access the binary to open a shell where you can run the firebase command. Continue to log in and test the CLI. This is recommended for new developers or who does not know nodes. npm Below dome steps which is used to install it using npm step1: Install Node.js using nvm-windows (the Node Version Manager). Installing Node.js automatically installs the npm command tools. step2: Install the Firebase CLI via npm by running the following command npm install -g firebase-tools step3: Continue to log in and test the CLI Install In Mac OS or Linux In this three options are used to install it in mac or Linux: automatic install script standalone binary npm automatic install script Run the following cURL command: curl -sL https://firebase.tools | bash Continue to log in and test the CLI. standalone binary 1. Download the Firebase CLI binary for your OS: macOS | Linux 2. (Optional) Set up the globally available firebase command. Make the binary executable by running chmod +x ./firebase_tools. Add the binary's path to your PATH Continue to log in and test the CLI. npm Install Node.js using nvm (the Node Version Manager). Installing Node.js automatically installs the npm command tools. Install the Firebase CLI via npm by running the following command: npm install -g firebase-tools Continue to log in and test the CLI. Log in and test the Firebase CLI 1. Log into Firebase using your Google account by running the following command: firebase login This command connects your local machine to Firebase and grants you access to your Firebase projects. 2. Test that the CLI is properly installed and accessing your account by listing your Firebase projects. Run the following command: firebase projects:list Update to the latest CLI version windows: standalone binary: Download the new version, then replace it on your system npm: Run npm install -g firebase-tools mac: automatic install script: Run curl -sL https://firebase.tools | bash standalone binary: Download the new version, then replace it on your system npm: Run npm install -g firebase-tools Linux: automatic install script: Run curl -sL https://firebase.tools | bash standalone binary: Download the new version, then replace it on your system npm: Run npm install -g firebase-tools Initialize a Firebase project You establish a project directory using the firebase init command. firebase init At the end of initialization, Firebase automatically creates the following two files at the root of your local app directory: A firebase.json configuration file that lists your project configuration. A .firebaserc file that stores your project aliases. Configuration Commands Below the some commands which mostly use in Firebase: firebase --help This the Firebase help command Command Description login Authenticate to your Firebase account. Requires access to a web browser. logout Sign out of the Firebase CLI. login:ci Generate an authentication token for use in non- interactive environments. use Set active Firebase project, manage project aliases. open Quickly open a browser to relevant project resources. init Setup a new Firebase project in the current directory. This command will create a firebase.json configuration file in your current directory. help Display help information about the CLI or specific commands. Project Management Commands Command Description apps:create Create a new Firebase app in a project. apps:list List the registered apps of a Firebase project. apps:sdkconfig Print the configuration of a Firebase app. projects:addfirebase Add Firebase resources to a Google Cloud Platform project. projects:create Create a new Firebase project.projects:listPrint a list of all of your Firebase projects. Ref : link Why our expert Use Firebase Build better apps Improve app quality Grow your business Build better apps: It is used to create better apps using below features: Cloud Firestore Firebase ML Cloud Functions Authentication Hosting Cloud Stoarage Realtime Databases Improve app quality: Crashlytics Performance Monitoring Test Lab App Distribution Grow your business In-app messeging Google Analytics Predictions A/B Testing Cloud Messing Remote config Dynamic Links Example: Crud Api using firebase: Setting up firebase:- 1. Created a new project in firebase 2. Copied the SDK snippet that would help us link the firebase to our respective application. 3. Created a firebase.utils.js file inside of src folder 4. Pasted the SDK snippet to link the firebase Firebase.js file:- It consists of the basic setup that is required to link the application to the firebase. Here, fireDb.database().ref() is passing a reference to the database. This reference is being used to implement various CRUD operations upon the collection consisting of the required documents of the respective employee. AddorEdit function:- This function is triggered whenever the handlesubmit function is executed on submitting the form. ADD FUNCTIONALITY: It consists of firebaseDb.child("contacts").push(obj, (err) => {} api that helps us to create the collection using .child and .push pushes data inside that collection. It only gets executed if currentId is empty(i.e no existing user is selected) . EDIT FUNCTIONALITY: It consists of firebaseDb.child(`contacts/${currentId}`).set(obj, (err) => {} api that helps us to edit an existing data of the selected user using .set method. It only gets executed if currentId is not empty(i.e existing user is selected) . OnDelete Function:- This function gets triggered whenever the delete button is being clicked on a particular user. The id of that particular user is being saved inside currentId and using that the respective data of that user is being deleted. DELETE FUNCTIONALITY: It consists of firebaseDb.child(`contacts/${key}`).remove((err) => {} api that helps us to remove an document from inside of contacts collection using .remove. Storing the snapshot of the collection:- For displaying the entire list of the employee the data needs to be stored inside of a state that would change each time with the input of the new user. Using the firebaseDb.child("contacts").on("value", (snapshot) => {} we are getting access to the contact collection and then using the snapshot we are pulling the documents of contacts collection and storing it inside of the contact variable by setting the setContact value to the value of the snapshot. Displaying the documents:- After storing the real-time data from the database inside of the contact variable we are simply mapping through the Object and displaying the required datas as per the keys of each object. If you need help in project related to realtime firebase project then you can contact us using below contact id: contact@codersarts.com
- E – COMMERCE APP
While the primary goal of the new e-commerce website was to physically bring customers into the store, they also wanted to broaden their customer reach beyond SF by allowing products to be purchased online for delivery or for in store pickup. The site needed to reinforce their core business values: traditional, fun, and creative. The site also needed to distinguish this from other e-commerce retailers by emphasizing their highly curated inventory of handpicked specialty items. The primary business goals for this website included: Having clear ways of locating specific products Ability to support a single page for each product Having an efficient means of purchasing one or more products Steering customers towards popular products. Prototyping Homepage I kept the homepage clean and simple to avoid overwhelming users on first page they see. To allow users to easily locate and find products I included a global and secondary navigation, as well as a search bar. The new arrivals and product recommendation sections were key to showcasing the curated and frequently updated inventory as well giving users helpful suggestions on what to buy. I wanted to emphasize the importance of the customer brand relationship by highlighting the rich history and specialty of thus app. I incorporated this by featuring an “Our story” section on the homepage that also links to the about page with further information. I wanted to emphasize the importance of the customer brand relationship by highlighting the rich history and specialty of this app. I incorporated this by featuring an “Our story” section on the homepage that also links to the about page with further information. In the footer, I placed important links where users could obtain additional information they might need. I also included a social feed for users to gain inspiration from other customers and to raise awareness for in store events. Product Category Page Once a user selects the shop button or a certain category they are brought to a page that lists all the items under that specific category. One of my user personas wanted an age appropriate toy for her grandson, so including a filter and sort by function for topics such as age, price and brand was important to include. I also included a breadcrumb trail to make it easier for the user to navigate and identify where there are within the website. Single Product Page On the single product page, I wanted to make sure to provide detailed product descriptions so that users can ensure the product fits their needs. Below a user could find helpful product recommendations based on the current product they’ve selected. I also gave priority to the product reviews section since this allows for user input, establishes trust and also allows users to make more informed buying decisions. To make the checkout process as efficient as possible, I designed a drop down cart summary that would appear every time a user clicked add to cart. Users could then conveniently click on the checkout now button to begin the checkout process. Cart Summary Page Once the checkout now button or cart icon was selected, a user would be led to the cart summary page pictured below. This was the first step in the checkout process where users could review and make changes to their cart as appropriate. I also included the option to select between in store pick and home delivery as a way to entice customers to visit the Jeffrey’s Toy store and lower shipping costs. Checkout Page One of the primary pain points of the three user personas was having an efficient checkout process so I made sure to make this experience as seamless as possible. As a returning customer, users have the option to log in to their account and have their saved shipping and payment information auto filled in for them. I decided to keep the checkout process all on one page to make it easier for users to edit their information at any point in process. The progress bar at the top also indicates to users how many steps the checkout process will take, what point they are at now, and how close they are to completing their order. Additional Screens I also created some additional screens that included an Order Confirmation Page to indicate to users that the checkout process has successfully been completed. They could also find important details here about their order for reference. I created a Contact Page where users could inquire about products they were unable to find on the site as well as learn about store hours, the location and phone number to call. It was important that I included an About Page to emphasize what distinguishes this app from other e-commerce websites such as Amazon. I also utilized this page as an opportunity to discuss in the unique 60 year long history of this local business to reinforce their brand values of tradition, fun and creativity. Usability Testing Once I completed my wireframes, I created a prototype of my website to begin usability testing. This would allow me to evaluate how users would engage with the proposed website solution and validate whether it was addressing the primary user needs. It was important to test with mid-fidelity, grayscale wireframes to gather honest, critical feedback from potential customers and to solidify the functionality of the website before addressing the visual design. I conducted a usability test with 4 participants and asked them to complete three different scenarios to put themselves into the shoes of my user personas. These three scenarios included: 1. You need to buy a toy for your daughter. Show me how you would find a product and successfully purchase it. 2. Show me how you would find out what events are happening next month. 3. Show me how you would inquire about a toy that you couldn’t find when searching for it on the website. These were my key findings from the tests: Overall users were able to easily navigate the website and locate products and information. Participants found promo code section to be distracting in checkout flow. A few participants wanted a way to inquire about products if they didn’t want to call. Some felt there could be a greater push to bring people into the store. Conclusion : - The successful companies of the future will be those that take e-commerce seriously, dedicating sufficient resources to its development. E-commerce is not an IT issue but a whole business undertaking. Companies that use it as a reason for completely re-designing their business processes are likely to reap the greatest benefits. Hire Figma Experts for any kind of projects – urgent bug fixes, minor enhancement, full time and part time projects, If you need any type project hep, Our expert will help you start designing immediately. T H A N K Y O U !!
- TRAVEL APP
INTRODUCTION : - Most of us love travelling and also most of the people travel for the purpose of business meetings or for some official work or for just spending time with family and friends so, this idea of building a travelling app is very profitable thats why I decided to build a travel app because anybody who travels, wants to take rest after they came from a really tiring journey so I decided to make an app for booking hotel rooms which can make the hotel booking much easier and simple. Project idea: A marketplace for tourists and guides. Guides provide excursions, tourists buy excursions. Working steps: Competitors research Design sprint (1st) User testing with tourists Design sprint (2nd) User testing (customer experience) Branding sprint Landing Page Design User Journey Map Creating the interface for tourists Interface for guides User testing with guides Competitors research Competitors offer excursions and mostly they are not at all authentic. For example, it’s just resale of tickets from travel agencies, a sale of entrance tickets to parks, museums, attractions. Somewhere this is a private excursion only: a tourist and a guide, but often this is the resale of tickets for boring tours of top tourist locations. Market Validation We found researches, that most tourists do not plan in advance what to do on the spot, they buy airline tickets, book hotel, but procrastinate entertainment. Since the content is one of the most important in this application, it should be authentic and interesting. Therefore, we have implemented scheme recommendations of the excursions and on the basis of this have come up with a business model. The first design sprint We wanted to test our hypotheses, quickly develop a prototype of the product, find out what potential customers think, so we chose the methodology of Design sprints. I will not go into the details of the methodology. Creating the goal We started with an optimistic one: everyone expressed the global goal of our project. Goal: To generate a new niche through which will pass 1% of all journeys in the world. Sprint questions Questions for the sprint are: How can we create a new market and become NO.1 on it? How can we be credible for users? How can we become more competitive than any other similar app? Map Point of focus: Search and order activities for travelers. I drew the map, we thought through the full interaction of the product, starting from the moment when the user finds out about the project, and how the user can achieve the goal within the product. Vertically, I placed predefined stages “Discovery, learning, using, and the goal”. It really helped because it was difficult to start from scratch. Horizontal I placed roles that we have in the project: tourist, guide, moderator, blogger. Our roles in the product corresponded to our business model with the changes that emerged during the discussion. We added a moderator of content and support. HMW & Expert interviews We also tried to look at the project from a different angle and take into account the negative consequences in order to avoid them. We posed uncomfortable questions: What can go wrong? Where is our weak point? We invited all members of our team and people who are experts in their field to give their opinion. During the discussion and the expert interviews, more and more new questions appeared, which I, as a moderator, wrote down on post-it notes. We recorded all potential problems with the product in the HMW format. I adore this method, thanks to the formulation, potential problems can look not intimidating, but like a task that can be solved. HMW: To help recommend the app to friends? To track the activities of friends? To find out the user’s dream and offer him a service? Prototyping The fourth day of the design sprint was devoted to the creation of the prototype. We had to do quite a voluminous interactive prototype that involves the full path of the product and user interaction (based on design sprint map), starting with the first stage — advertising on Instagram. User testing To find respondents for the user testing I used Facebook ads. I tried 2 ad companies: with the goal to fill in the questionnaire and to write directly in Facebook Messenger, but successful appears only the questionnaire ad. The screening of respondents was carried out using the Google Forms questionnaire. I eliminated the respondents with a special question, where it was necessary to choose the correct answer (interest: travel), those who chose — pass to the next questions and I invited respondents to the user testing. I sent invitations with a personalized email to everyone, those who agreed were recorded in the calendar For video calls, I used Google Hangouts. 1.5 hours were allocated to each respondent. All respondents were very cool, they travel a lot, and they were from our target audience. At first, I asked general questions, then we proceed to questions related to the topic, finally, I showed the prototype, asked to complete the tasks, observed the responses and mood. I recorded testing on the video, for the purpose to review and analyze. An important result of the testing was that users liked the product, it even solves their pain points, which they had expressed during the user testing. Our hypothesis that users do not book in advance the excursions was confirmed, and also that speed and unique customized content is important to them. We showed several versions of the application interface in the form of cards (like in a tinder) and in the form of a map. We made bets that the cards option would be preferable, but surprisingly most users did not understand it or did not like it, so we decided to continue on with the interface, where activities are shown on the map. Second design sprint The second design sprint was conducted by the abridged version and was completely devoted to the customer experience, interacting with the product offline. We conducted another user testing in order to find out how they interact with the application offline, in unforeseen, controversial situations. For example, we specifically made mistakes in the prototype and observed how users will solve them. We figured out whether the support of the app is clear, and how we can design the most effective customer care, we also corrected some obscure points, that were in the previous prototype and tested it with users. We made a more detailed description of the excursion page. According to the second user testing results, we found that: Users do not want to be involved in activities where physical work is required. Not everyone was easy to contact the guide or support. Users don’t want to read a lot of text after booking. Designing interface for tourists After conducting user testing, I made the report. New interface software requirements specifications were created. As I have already said, the user interface with the map was understandable and preferable for users, then the interface with cards, so we decided to continue on with this. Especially since such an interface is more suitable for our brand’s values — an instant booking during the journey. Conclusion With the data collected in the research phase we decided to solve the lack of organization when traveling because it was one of the biggest pain-point for our users and I firmly believe that with our solution we have solved the problem in an easy and efficient way. Hire Figma Experts for any kind of projects – urgent bug fixes, minor enhancement, full time and part time projects, If you need any type project hep, Our expert will help you start designing immediately. T H A N K Y O U ! !











