بلاگ

  • UIKit Apprentice | Kodeco

    UIKit Apprentice | Kodeco


    This book is for anyone completely new to Swift and iOS development — or for those that
    just need a little brushing-up!

    • Working with Xcode
    • Coding in Swift
    • Building user interfaces
    • Modelling and persisting data
    • GPS and image data
    • Accessing remote APIs
    • iPad development
    • Publishing to the App Store

    For Complete Beginners!

    If you’re completely new to Swift and iOS development (or need a brush-up), this is the series for you.
    The UIKit Apprentice is a series of epic-length tutorials for beginners where you’ll learn how to build four complete apps from scratch.
    Each new app will be a…


    more

    This section tells you a few things you need to know before you get started, such as what you’ll need for hardware and software, where to find the project files for this book and more.

    This section introduces you to the first of the four apps you’ll build over the course of this book — Bull’s Eye.

    As you progress through building the Bull’s Eye app, the section will teach you how to think like a programmer and how to plan your programming tasks. In addition, you’ll also learn how to use Xcode, Interface Builder, and even the basics of coding for iOS.

    While some of the concepts in this section might seem a bit basic, please do not skip this section if you are new to iOS development – you will learn some fundamentals which act as the building blocks for what you learn later.

    Welcome to The UIKit Apprentice! In this book, you’re about to deep dive into the latest and greatest Swift and iOS best practices. You will build four iOS projects using Swift and UIKit. Good luck!

    In this chapter, you will start building the initial screen for the Bull’s Eye game.

    Congratulations, you have a UIButton on the screen! It’s time to start adding the UISlider which will be fundamental to the game.

    In this chapter you will deal with random numbers, starting a new round of the game, and calculating the points scored.

    It’s time to calculate and display the score and the number of rounds played in this chapter.

    Add some polish to the game so that it actually looks like a game. Also, allow the user to re-start the game so that two people can play the game.

    Let’s spruce up the game UI with some fancy artwork and make your game stand out from the pack. Also, let’s add an About screen with information about the game.

    Phew! You have successfully created Bull’s Eye. In the final chapter of this section you will learn about supporting different device sizes and add some beautiful animations.

    This section builds upon what you learnt in the previous section by introducing you to your second app. Checklists takes you from a single-screen app to a multi-screen app where you learn the concepts of navigation flow, displaying data lists, and the idea of modeling and persisting your data.

    If you want to build any sort of list-based iOS app, this section is a good starting point for learning the basics. Of course, even if you aren’t building a list-based app, this section has some basic concepts such as handling the navigation flow from one screen to another (and back again) that would be very useful to an apprentice iOS developer.

    Add a table view to show a list of to-do items and in the process learn about how to code navigation controllers and table views for iOS.

    In this chapter, we’ll set up a data model to represent our checklist items and then use the data model to display our to-do items.

    All about navigation controllers — how to add them, configure them, and use them. Also learn how add a new screen to your to-do app and how to add the ability to delete to-do items.

    Create the Add Item screen for your app and in the process, learn how to create custom table view cells, get user input, and add polish to data entry screens.

    You’ll learn about delegates and protocols, and how to use them to complete the add items functionality for your Checklists app.

    Now that you can add items, learn how to edit added items. Also, refactor your code to optimize it.

    Checklists works great but we can’t persist our data — our to-do items are reset each time the app is re-launched. Let’s learn how to persist our data between app sessions.

    From one list to many – Checklists manages a single list of items at the moment. That’s not very useful. Let’s add the ability to have multiple lists of items.

    Let’s improve our data model so that we can have different to-do items for each checklist. We’ll also implement a new saving strategy in the process.

    Learn how to save application settings and other useful information between app sessions. Also, how to guard against possible crashes and to improve the first-run experience of the app so that your app looks more polished and user-friendly.

    With the basic functionality for your Checklists app done, it’s time to add some polish and functionality that makes your app stand out from the herd.

    Learn how to add local notifications to Checklists so that you can be notified when a to-do item is due and how to manage notifications through the lifecycle of a to-do item.

    With this third section and the MyLocations app, you get into Swift programming in earnest.

    Sure, you’ve already coded apps in the previous two sections, but this section starts off with a good review of all the Swift coding principles you’ve learned so far and adds to it by introducing some new concepts too.

    In addition to that, you learn about using GPS coordinates, displaying data on maps, and using the iOS image picker to take photos using your camera or to pick existing images from your photo album. There’s a lot of valuable general information on Swift development as well as specific information about building location-aware apps.

    This section also introduces you to building apps for Dark mode – a subject that you’ll do a deep-dive into in the next section.

    You have made great progress! You’ve learnt the basics of Swift programming and created two applications from scratch. Now let’s add some more Swift theory to strengthen the foundations we’ve built while creting those two apps.

    This is the first chapter in this section which teaches you how to create a “location album” app. Take the first steps for creating this new app by learning how to use the Core Location framework to get your location and to display it.

    You were able to access location data and display it in the last chapter. In this chapter, you will improve upon that code by handling GPS errors and improving the GPS accuracy. You’ll also set up the app to handle different screen sizes.

    Time for some more theory! You’ll learn all about objects, classes, inheritance, and a few other object oriented principles from Swift that you need to be familiar with.

    Time to get back to coding again. You’ll learn how to build the Tag Location screen and how to set up another data entry screen for an iOS app.

    The MyLocations app functionality is slowly taking shape now. So it’s time to polish things up a bit by improving the user experience and adding some UI flourishes.

    Learn all about how to save your locations on the device using Core Data, the object persistence framework for iOS.

    Let’s show the data that you’re now able to save via Core Data as a list of locations. Learn about TableView sections, NSFetchedResults and deleting tagged locations.

    Let’s get visual! Show your tagged location on a map view using MapKit so that you can see where in the world each location is.

    Learn how to use the built-in image picker in iOS to add images from either the camera or the photo album to your tagged locations.

    It’s time to give MyLocations a complete visual makeover! You’ll change the styling for the app, add buttons for action items, add sounds, icons, and launch images.

    The final section of the book covers building an app which supports both Light and Dark appearances from scratch via the StoreSearch app. StoreSearch shows you how to have separate custom assets and colors for each type of iOS appearance.

    But that’s not all! The app also shows you how to do custom screens both for specific orientations (landscape vs. portrait) as well as for specific platforms (iPhone vs. iPad). This section covers networking, working with remote API endpoints to fetch data needed by your app, and how to parse the fetched data, how to work with Stack Views, and how to add iPad support to your app.

    If that wasn’t enough, this section also takes you through the full application life cycle – from developing the code, testing it, and all the way to submitting to Apple. So don’t skip this section thinking that you know all about iOS development after the last few sections!

    Most iOS job listings say that you need to have worked with a REST API. Well, this chapter starts you on a new app which will teach you all about how to fetch data from a remote server and get you on the path to REST API mastery.

    Learn how to display your data in a table view using custom table cells. Also change the appearnace of the app and do a bit of debugging.

    Learn the ins and outs of making network requests to remote servers. Then, when you get a response to your request, learn how to parse the JSON response.

    Learn why synchronous networking is bad and how to make things better by switching to asynchronous networking.

    Learn about the powerful networking features provided by URLSession to make network requests that can be cancelled and how to download the image assets for your search results.

    Learn how to add a detail pop-up to show more information about selected search results.

    The detail pop-up works well but it can do with some more spit and polish to make it really shine. Learn all about adding dynamic type support, gradient backgrounds and more animations.

    You’ve only dealt with a single orientation up to now. But your apps need to support both portrait and landscape orientations. Learn how to add landscape support to StoreSearch and by adding a custom interface.

    You’ve made great progress with StoreSearch, but now it’s time to refactor the code to smooth out a few of the rough edges. Knowing how to improve your code by refactoring it is an important skill to learn.

    StoreSearch works great when the display language is English. But what if you wanted to support other languages? Learn all about internationalization and how to update your app to suppport multiple languages.

    Learn how to optimize StoreSearch for iPad and to add iPad specific UI features such as split view conrollers and menu popovers.

    After all that work, your app is finally ready. You just have one more gauntlet to run – the App Store submission process. Learn about the Apple Developer program, beta testing via TestFlight and how to submit your app for Apple approval.



    Source link

  • Prioritize media privacy with Android Photo Picker and build user trust



    Posted by Tatiana van Maaren – Global T&S Partnerships Lead, Privacy & Security, and Roxanna Aliabadi Walker – Product Manager

    At Google Play, we’re dedicated to building user trust, especially when it comes to sensitive permissions and your data. We understand that managing files and media permissions can be confusing, and users often worry about which files apps can access. Since these files often contain sensitive information like family photos or financial documents, it’s crucial that users feel in control. That’s why we’re working to provide clearer choices, so users can confidently grant permissions without sacrificing app functionality or their privacy.

    Below are a set of best practices to consider for improving user trust in the sharing of broad access files, ultimately leading to a more successful and sustainable app ecosystem.

    Prioritize user privacy with data minimization

    Building user trust starts with requesting only the permissions essential for your app’s core functions. We understand that photos and videos are sensitive data, and broad access increases security risks. That’s why Google Play now restricts READ_MEDIA_IMAGES and READ_MEDIA_VIDEO permissions, allowing developers to request them only when absolutely necessary, typically for apps like photo/video managers and galleries.

    Leverage privacy-friendly solutions

    Instead of requesting broad storage access, we encourage developers to use the Android Photo Picker, introduced in Android 13. This tool offers a privacy-centric way for users to select specific media files without granting access to their entire library. Android photo picker provides an intuitive interface, including access to cloud-backed photos and videos, and allows for customization to fit your app’s needs. In addition, this system picker is backported to Android 4.4, ensuring a consistent experience for all users. By eliminating runtime permissions, Android photo picker simplifies the user experience and builds trust through transparency.

    Build trust through transparent data practices

    We understand that some developers have historically used custom photo pickers for tailored user experiences. However, regardless of whether you use a custom or system picker, transparency with users is crucial. Users want to know why your app needs access to their photos and videos.

    Developers should strive to provide clear and concise explanations within their apps, ideally at the point where the permission is requested. Take the following in consideration while crafting your permission request mechanisms as possible best practices guidelines:

      • When requesting media access, provide clear explanations within your app. Specifically, tell users which media your app needs (e.g., all photos, profile pictures, sharing videos) and explain the functionality that relies on it (e.g., ‘To choose a profile picture,’ ‘To share videos with friends’).
      • Clearly outline how user data will be used and protected in your privacy policies. Explain whether data is stored locally, transmitted to a server, or shared with third parties. Reassure users that their data will be handled responsibly and securely.

    Learn how Snap has embraced the Android System Picker to prioritize user privacy and streamline their media selection experience. Here’s what they have to say about their implementation:

    A grid of photos in the photo library is shown on a smartphone screen, including a waterfall and two people smiling and posing for the camera. The Google Photos interface is at the top, with the Photos tab selected, and one photo from the grid is selected for use

    “One of our goals is to provide a seamless and intuitive communication experience while ensuring Snapchatters have control over their content. The new flow of the Android Photo Picker is the perfect balance of providing user control of the content they want to share while ensuring fast communication with friends on Snapchat.”

    Marc Brown, Product Manager

    Get started

    Start building a more trustworthy app experience. Explore the Android Photo Picker and implement privacy-first data practices today.

    Acknowledgement

    Special thanks to: May Smith – Product Manager, and Anita Issagholyan – Senior Policy Specialist



    Source link

  • Top 15 Headhunting Firms for Exceptional Talent Acquisition in 2024 Yeeply

    Top 15 Headhunting Firms for Exceptional Talent Acquisition in 2024 Yeeply


    Choosing the right headhunting firm can be a game-changer for your career or company. With so many options available, it’s crucial to know which firms excel in placing top talent in high-level positions. We highlight the top 15 headhunting firms that have proven track records and specialize in various industries.

    These firms are known for their ability to connect employers with the best candidates, making the hiring process more efficient and effective. By understanding what each firm offers, you can make informed decisions that align with your career goals or business needs.

    1. Yeeply

    We focus on helping you hire the best digital and remote tech talent. Our headhunting firm streamlines the process, making it agile and competitive. We target high-level experts who may not be seeking new roles, ensuring we find the best fit for your company.

    We also have vast experience in the industry, offering flexible hiring solutions for urgent or hard-to-fill positions. You can find more details on how we operate by hiring the world’s top experts.

    2. Korn Ferry

    Korn Ferry is one of the leading headhunting firms in the world. As an innovator in executive search since 1969, they have a strong track record for finding top-tier talent. They have a wide network of professionals across various industries.

    Their services include executive search, talent acquisition, and leadership consulting. They help clients create effective human capital strategies. Korn Ferry has a presence in numerous global locations, ensuring a wide reach.

    They are especially known for their extensive market knowledge and tailored solutions. Korn Ferry continues to grow, thanks to multiple acquisitions. This makes them a top choice for companies looking for high-level executive talent. Learn more about their services and achievements by visiting Korn Ferry.

    3. Egon Zehnder

    Egon Zehnder is a leading headhunting firm founded in 1964 by Egon P.S. Zehnder. The firm has grown to have 68 offices in 40 countries.

    This company specializes in executive search and leadership advisory. It focuses on understanding your specific business needs to find the right leaders.

    Their Financial Services Practice is the largest in the industry. With over 600 consultants globally, Egon Zehnder provides impactful advice and builds long-term relationships.

    For executive search, they help you benchmark and develop potential candidates to meet your objectives. Their customized approach ensures that each engagement aligns with your goals.

    4. Spencer Stuart

    Spencer Stuart is a top choice for executive search and leadership consulting. The firm has a strong reputation for helping companies find senior leaders, including CEOs and board directors.

    With over 70 offices in more than 30 countries, Spencer Stuart has a global presence. They serve a wide range of clients from multinational corporations to startups.

    The firm is known for its deep relationships with executives and its industry-specific expertise. Spencer Stuart’s capabilities in executive search make it a leader in the field.

    5. Russell Reynolds Associates

    Russell Reynolds Associates is a prominent name in the executive search industry. Founded in 1969, the firm boasts a global presence with 46 offices in 26 countries.

    You can rely on Russell Reynolds Associates for expert guidance in finding, recruiting, and developing top-tier leaders. Their consultants offer tailored advice to ensure smooth transitions for new executives.

    The firm serves a diverse range of industries, including Technology, Financial Services, Industrial/Natural Resources, Consumer, and Healthcare. Check out more about their executive search services and how they assist in leadership development.

    6. Heidrick & Struggles

    Heidrick & Struggles is a pioneer in the executive recruiting industry. Founded in 1953, the firm has built a reputation for identifying transformational leaders.

    Its consultants specialize in executive searches, leadership consulting, and culture shaping. You can learn more about their services on their website.

    The firm is also known for its insights into how AI is reshaping business models. They focus on finding talent that can implement and govern AI effectively. More information is available here.

    In 2024, Heidrick & Struggles ranked #4 among the top executive search firms. Discover more about this ranking here.

    7. Boyden

    Boyden is a global talent and leadership advisory firm with a strong reputation in executive search. Based in New York, Boyden has been recognized multiple times by Forbes as one of America’s Best Executive Recruiting Firms.

    Forbes ranked Boyden highly in its 2024 list of top executive search firms, highlighting its commitment to collaborative teamwork and market insight, as noted in Boyden’s ranking by Forbes.

    Boyden has repeatedly secured top positions in such lists for several years. Its consistent performance makes it a reliable choice for top-level recruitment.

    8. N2Growth

    N2Growth ranks among the top executive search firms globally. It specializes in human and organizational performance.

    N2Growth consistently appears on Forbes’ list of Best Executive Recruiting Firms. In 2024, it secured the 16th position for the eighth consecutive year.

    You can find more details about its achievements here. The firm also made it to the top 25 of America’s Best Professional Recruiting Firms.

    9. Odgers Berndtson

    Odgers Berndtson is a well-known executive search firm with a global presence. They focus on finding top-tier talent for leadership roles across various industries.

    With a rigorous approach to search and recruitment, they ensure that organizations get the best leaders. Their process involves a mix of analysis, creativity, and experienced judgment.

    If you are looking to fill critical leadership positions, Odgers Berndtson can be a valuable partner. You can learn more about their services and opportunities on their official website.

    10. Isaacson, Miller

    Isaacson, Miller is a distinguished executive search firm with over 40 years of experience. They specialize in mission-driven sectors and have built a reputation for creating highly qualified and diverse teams.

    Isaacson, Miller starts every search by deeply understanding their clients’ culture, goals, and values. Their process includes thorough listening sessions to define measures of success.

    To learn more about their services and values, visit Isaacson, Miller.

    11. Diversified Search

    Diversified Search, founded in 1974, specializes in executive searches across various sectors. It is recognized as one of the top 10 executive search firms in the U.S. For six consecutive years, it has been featured on Forbes’ list of America’s Best Executive Recruiting Firms.

    The firm’s innovative business model emphasizes diversity and inclusion. Recently, Felicia McGinty was appointed as Managing Director in the Education Practice. Headquartered in Philadelphia, the firm is the largest woman-founded and woman-led executive search firm in the country.

    Diversified Search provides services to clients nationwide and has developed a reputation for impactful and effective executive placements.

    12. True Search

    True Search is a global recruitment firm specializing in executive and board-level placements. They work with companies seeking transformative growth.

    True Search is known for real-time recruiting progress, fostering collaborative experiences. Their inclusive platform ensures accessible, efficient, and equitable executive searches.

    With a strong presence on LinkedIn, True Search has a vast network of followers, reinforcing their influential status in the industry.

    13. Egon Zehnder International

    Egon Zehnder International is a renowned name in executive search, with its inception dating back to 1964. The firm operates across 65 offices in 36 countries, underscoring its global reach and expertise.

    You benefit from their deep industry experience and personalized approach. Egon Zehnder focuses on understanding your unique business needs, ensuring they find the best leadership fits.

    They are recognized among the top executive search firms globally, often securing high rankings in industry lists. Their commitment to building long-term relationships and creating lasting value sets them apart in the competitive landscape of headhunting.

    14. Caldwell Partners

    You will find that Caldwell Partners stands out in executive search. They have more than 45 years of experience, making them a trusted advisor in the field.

    Their services cover board directors, chief executives, and senior executives. They also focus on creating inclusive workplaces and retaining transformational talent.

    Caldwell has offices in major cities, including San Francisco, enhancing their reach and capabilities.

    15. Lucas Group

    Lucas Group, a Korn Ferry company, has been a leader in executive recruiting since 1970. They specialize in helping businesses find top talent across various industries and functions.

    In November 2021, Lucas Group was acquired by Korn Ferry. This acquisition has strengthened Lucas Group’s capabilities, aligning them with Korn Ferry’s global resources and expertise.

    Lucas Group is now part of Korn Ferry’s Professional Search practice. They work with thousands of companies and talented professionals, ensuring clear executive search and hiring goals are met.

    With a strong commitment to diversity and inclusion, Lucas Group is dedicated to providing quality services for businesses, individuals, and government agencies. For more information, visit their LinkedIn page.

    Understanding Headhunting Firms

    Photograph of a Man Showing Something on the Monitor to His Coworkers

    Headhunting firms, also known as executive search firms, specialize in finding and recruiting top-tier talent for executive and senior-level positions. These firms operate with precision, considering specific industry needs and organizational culture.

    What Are Headhunting Firms?

    Headhunting firms focus on sourcing and placing high-level executives and specialists within organizations. Unlike standard recruitment agencies that fill a wide range of positions, headhunters target candidates who are not actively seeking new jobs but possess in-demand skills and experience. These firms work closely with companies to understand their hiring needs and identify potential candidates who fit the profile. Key roles they often fill include CEO, CFO, and other executive positions.

    Headhunting firms leverage their extensive networks and databases to find suitable candidates. Their efforts are aimed at matching a candidate’s qualifications with the strategic goals of the hiring company, ensuring a perfect fit. By specializing in specific industries, they provide deep insights and access to a pool of talent not easily reachable through conventional recruitment methods.

    How Headhunting Firms Operate

    Headhunting firms operate through a systematic approach involving several stages. First, they conduct a detailed analysis of the hiring company’s needs and the role requirements. They then use their networks, databases, and industry knowledge to identify potential candidates. The selection process includes rigorous screenings, interviews, and background checks to ensure candidates meet the company’s expectations.

    Firms usually charge a fee based on the candidate’s first-year salary, which can be a significant investment but is often justified by the quality of hire. They also provide support during the negotiation and onboarding process, helping to ensure a smooth transition for the new executive. Additionally, these firms maintain confidentiality throughout the process, protecting both the candidate’s and the company’s interests. This meticulous approach helps in securing high-caliber talent that aligns with organizational goals.

    Benefits of Using Headhunting Firms

    Using headhunting firms can give you access to top talent, save time and money, and provide industry-specific knowledge. These advantages make headhunting firms a valuable resource for businesses.

    Access to Top Talent

    Headhunting firms specialize in finding the best candidates for high-level positions. They have extensive networks and use advanced search techniques to identify top professionals who may not be actively seeking new jobs. This means you get access to a pool of highly qualified candidates who are often not reachable through traditional job postings.

    These firms also conduct in-depth assessments to ensure a good fit for your company culture and role requirements. This thorough vetting process helps in hiring individuals who can make a significant impact on your business.

    Time and Cost Efficiency

    Hiring new employees can be a time-consuming and expensive process. Headhunting firms streamline this by managing the entire recruitment process for you. This includes sourcing candidates, conducting interviews, and negotiating offers.

    Using a headhunting firm allows your internal team to focus on other important tasks, thereby increasing productivity. The precision approach of headhunting firms ensures that you get quality over quantity, saving you from the hassle of sifting through numerous unqualified applications.

    Industry Expertise

    Headhunting firms often specialize in specific industries, giving them deep knowledge of the job market and trends in those sectors. This expertise helps them find candidates with the skills and experience that are most relevant to your industry.

    They can offer valuable insights into competitive salaries, job market conditions, and skill requirements. This specialized knowledge can be incredibly beneficial in making informed hiring decisions that align with your company’s strategic goals.

    Choosing the Right Headhunting Firm

    Selecting the best headhunting firm is vital for finding top talent. It’s key to evaluate the firm’s experience and understand their specializations to ensure they align with your needs.

    Evaluating Firm Experience

    Experience is critical when choosing a headhunting firm. Experienced firms have developed extensive networks and have a proven track record. Look for firms that have been in the industry for several years and have successfully placed candidates in roles similar to what you need.

    Client testimonials and case studies can offer valuable insights into a firm’s performance. Reviews from other companies can help you gauge client satisfaction. Reputable firms often highlight successful placements and partnerships on their websites.

    Industry-specific expertise is another factor. Firms that have experience in your industry will understand the unique challenges and requirements, making the recruitment process smoother and more effective.

    Understanding Firm Specializations

    Specializations are crucial. Some firms focus on executive roles, like C-level and management positions, while others may cater to different sectors or job functions. Matching a firm’s specialization with your hiring needs ensures a better fit and more efficient process.

    Diversity and inclusion initiatives can be an important consideration. Firms that prioritize these aspects tend to offer a broader and more diverse range of candidates. For example, Nelson is known for its commitment to diversity and inclusion in the workplace.

    Geographic reach is also essential. Firms with a wide reach can source candidates from a larger pool, which might be beneficial if you’re looking to hire in multiple locations. This is particularly important for roles that can be filled remotely or require relocation.

    By assessing these factors, you can make a more informed decision and choose a headhunting firm that will meet your specific needs effectively.

    Frequently Asked Questions

    This section covers key questions about leading executive search firms, including their unique traits, current trends, and recognized leaders in the industry.

    Who are the top executive search firms globally?

    Some of the top executive search firms globally include Korn FerryEgon Zehnder, and Spencer Stuart. These firms are known for their extensive networks and successful track records in placing high-level executives.

    What are the characteristics of prestigious executive search firms?

    Prestigious executive search firms prioritize diversity and inclusion, have deep industry knowledge, and maintain strong relationships with top-tier candidates. Firms like Nelson and Russell Reynolds Associates exemplify these traits by delivering high-quality placements and excellent client service.

    Which company is considered the largest headhunter globally?

    Korn Ferry is widely considered the largest headhunter globally. They offer extensive services across a wide range of industries and are known for their comprehensive approach to talent acquisition and leadership development.

    How do the top headhunting firms differentiate themselves?

    Top headhunting firms set themselves apart by specializing in various sectors, providing personalized services, and maintaining a focus on client and candidate satisfaction. For example, Stanton Chase International is known for its expertise in diverse global regions and industries.

    What trends are currently impacting the executive search industry?

    Current trends in the executive search industry include a greater emphasis on diversity and inclusivity, technology-driven recruitment processes, and the importance of soft skills in executive roles. Firms also focus more on passive candidates, leveraging social media and data analytics to identify top talent.

    Which firms are recognized in the Forbes Best Recruiting Firms list for 2024?

    Firms such as Spencer Stuart and Russell Reynolds Associates are often recognized in the Forbes Best Recruiting Firms list for their exceptional performance in the industry. These firms have consistently demonstrated strong client relationships, successful placements, and industry leadership.

    Tags



    Source link

  • New Android Vitals Metrics are here



    Posted by Karan Jhavar – Product Manager, Android Frameworks, and Dan Brown – Product Manager, Google Play

    Android has long championed performance, continuously evolving to deliver exceptional user experiences. Building upon years of refinement, we’re now focusing on pinpointing resource-intensive use cases and developing platform-level solutions that benefit all users, across the vast Android ecosystem.

    Since the launch of Android vitals in Play Console in 2017, Play has been investing in providing fleet-wide visibility into performance issues, making it easier to identify and fix problems as they occur. Today, Android and Google Play are taking a significant step forward in partnership with top OEMs, like Samsung, leveraging their real-world insights into excessive resource consumption. Our shared goal is to make Android development more streamlined and consistent by providing a standardized definition of what good and great looks like when it comes to technical quality.

    “Samsung is excited to collaborate with Android and Google Play on these new performance metrics. By sharing our user experience insights, we aim to help developers build truly optimized apps that deliver exceptional performance and battery life across the ecosystem. We believe this collaboration will lead to a more consistent and positive experience for all Android users.”

    Samsung

    We’re embarking on a multi-year plan to empower you with the tools and data you need to understand, diagnose, and improve your app’s resource consumption, resulting in happier and more engaged users, both for your app, and Android as a whole.

    Today, we’re launching the first of these new metrics in beta: excessive wake locks. This metric directly addresses one of the most significant frustrations for Android users – excessive battery drain. By optimizing your app’s wake lock behavior, you can significantly enhance battery life and user satisfaction.

    The Android vitals beta metric reports partial wake lock use as excessive when all of the partial wake locks, added together, run for more than 3 hours in a 24-hour period. The current iteration of excessive wake lock metrics tracks time only if the wake lock is held when the app is in the background and does not have a foreground service.

    These new metrics will provide comprehensive, fleet-wide visibility into performance and battery life, equipping developers with the data needed to diagnose and resolve performance bottlenecks. We have also revamped our wake lock documentation which shares effective wake lock implementation strategies and best practices.

    In addition, we are also launching the excessive wake lock metric documentation to provide clear guidance on interpreting the metrics. We highly encourage developers to check out this page and provide feedback with their use case on this new metric. Your input is invaluable in refining these metrics before their general availability. In this beta phase, we’re actively seeking feedback on the metric definition and how it aligns with your app’s use cases. Once we reach general availability, we will explore Play Store treatments to help users choose apps that meet their needs.

    Later this year, we may introduce additional metrics in Android vitals highlighting additional critical performance issues.

    Thank you for your ongoing commitment to delivering delightful, fast, and high-performance experiences to users across the entire Android ecosystem.



    Source link

  • Smart Hiring Tactics From a James Beard Award Nominee

    Smart Hiring Tactics From a James Beard Award Nominee


    Opinions expressed by Entrepreneur contributors are their own.

    Located in the heart of Portland, Maine, Sur Lie is a James Beard Award-nominated tapas restaurant with a menu spearheaded by chef Mimi Weissenborn, a recently announced contestant on Bravo’s Top Chef.

    While Weissenborn takes the helm in the kitchen, owner and James Beard Award semifinalist Krista Cole works behind the scenes to ensure a smooth service night after night. She first opened the restaurant out of her love for tapas and wine pairings, filling a gap she couldn’t find in Portland. Then, Weissenborn came along and changed the game. Now, their unique dynamic is a key component to their success at Sur Lie.

    “[We’re] this incredible dynamic duo,” Cole says. “I’m very data-oriented, organized and efficient, and she’s the brilliant, creative brain that comes up with the menu, which is why people come into Sur Lie as well. We have a really good relationship that way. As women in the industry trying to break down barriers, we focus on what we’re both really good at and how to complement each other.”

    Related: This CEO’s Paint-Your-Own Pottery Business Has 130 Locations — But Anyone Can Use Her Tips for Creating a Customer-First Experience

    Together, the pair has crafted innovative menus and an even more impressive tapas service. One customer, Mike C., visited the restaurant on a post-holiday trip and still remembers his server’s name today.

    “Service makes the meal, and it can break the meal,” Mike says. “Meg — because I do remember her name — she was really great, super friendly, nice and casual but professional. The service that we got was attentive but not overbearing. I’m not looking for them to come up and check on me every second, but I also don’t want to have to look around when I need them. That’s service: learning that knowledge, that experience, that know-when-to and when-not-to.”

    Cole says she isn’t sure if the sixth sense for exceptional service can be taught, but she encourages her team to develop pride in their work. She notices a clear improvement in service when servers treat their work as a craft and feel empowered to add their own personal touch.

    Related: Expert Strategies to Add to Your Small Business’s Playbook This Tax Season

    It also helps to have a passionate chef running the show. “I think the most important thing, too, is [Mimi is] an amazing leader, and that, to me, speaks more than being an amazing chef because when you can lead a team of people and really inspire in our industry, then that translates into the guest experience,” Cole says.

    Building a dream team doesn’t happen by mistake. Cole uses two hiring tactics to find employees who show promise. First, she reviews the applicant’s resumé and researches their previous workplaces to understand their past work cultures and see if they would be a natural fit at Sur Lie. Second, she asks about the applicant’s favorite workplace and why, gaining insight into their values and cultural contributions.

    From hiring to inventory, Cole does it all, emphasizing the importance of organization to stay on top of everything. Before becoming a restaurateur, Cole worked as a healthcare manager and studied entrepreneurship, gaining expertise in team and organizational structure that still serves her today.

    “Having systems and processes in place is super important to providing quality and consistency,” she says. “[That translates into] having your team really engaged in the work they’re doing and being able to hold people accountable. It should be a well-oiled machine, and there should be very clear expectations and one way of doing things.”

    Related: The Training (and Business) Philosophy That Sets This Self-Defense Studio Apart

    With such systems and expectations in place, Cole is able to protect her limited time. She owns and runs two other eateries in Maine in addition to Sur Lie. Something as simple as creating an Amazon order request form or preparing a meeting agenda saves her precious time and ensures she addresses every issue with her team.

    Reading customer reviews is always an item on Cole’s to-do list and an essential component of Sur Lie’s well-oiled machine. She appreciates anyone who takes the time to provide feedback, but she really takes it to heart when it comes from a local resident.

    When she first took over the restaurant Gather, she invested in the brand by hiring experts and sourcing local ingredients, resulting in higher menu prices. “[We were] hearing from the community that it was getting too expensive,” Cole says. “We definitely took that feedback seriously because you’re not a destination restaurant in a small town. Usually, you’re supported by your community and the locals. So that was something that we shifted and tried to make a little more approachable for people, especially in a family-oriented community.”

    Related: What Small Businesses Can Learn from Yelp’s Trend Tracker

    From starting in healthcare to owning three restaurants, Cole continues to steer her entrepreneurial journey with these key lessons:

    • Pick up transferable skills along the way. The entrepreneurial journey is often a winding road, but skills from other industries can prove invaluable in the long run.
    • Listen to locals. Community is the driving force behind all local businesses. Make sure to listen to locals and value their opinions to foster long-term loyalty.
    • Get a good read on the market. Determine if there’s a hole in the market your business can fill and assess how you can differentiate yourself from competitors.
    • Service is a craft. Service leaves a lasting impression, good or bad. Encourage your team to bring their own flair to customer service and take pride in their craft.
    • Protect your time. Set clear expectations with your team on when and how you’re available. Whether it’s a form for inventory requests or an agenda item for the all-hands meeting, having a system in place will help you work smarter, not harder.
    • Hire to enhance your culture. If you don’t invest in your staff’s careers, they won’t invest in the customer experience. Recognize their value and how it aligns with your company culture.

    Listen to the episode below to hear directly from Cole and Mike C., and subscribe to Behind the Review for more from new business owners and reviewers every Thursday.

    Editorial contributions by Erin Palmero and Kristi Lindahl



    Source link

  • 5 Best Classic App Store Games

    5 Best Classic App Store Games


    Canabalt is a classic endless runner where you will race across rooftops and avoid obstacles. With a single button control, eight game mode options, and different runners to choose from, you can run for a high score or just for survival.

    As one of the originals in this genre, Canabalt has you running to survive the destruction around you. You can escape alone or bring another runner along for the journey. Controls are simple allowing you jump across rooftops with a tap. Obstacles and distractions are everywhere, so keep your eyes peeled as you race for safety.

    Canabalt is an endless runner that is easy to pick up and play. With understated, but attractive retro-style graphics and fast-paced background music, the energy will keep you moving, jumping, and running to escape.



    Source link

  • Improve app quality and performance with new Play Console insights



    Posted by Dan Brown, Dina Gandal and Hadar Yanos – Product Managers, Google Play

    At Google Play, we partner with developers like you to help your app or game business reach its full potential, providing powerful tools and insights every step of the way. In Google Play Console, you’ll find the features needed to test, publish, improve, and grow your apps — and today, we’re excited to share several enhancements to give you even more actionable insights, starting with a redesigned app dashboard tailored to your key workflows, and new metrics designed to help you improve your app quality.

    Focus on the metrics that matter with the redesigned app dashboard

    The first thing you’ll notice is the redesigned app dashboard, which puts the most essential insights front and center. We know that when you visit Play Console, you usually have a goal in mind — whether that’s checking on your release status or tracking installs. That’s why you’ll now see your most important metrics grouped into four core developer objectives:

      • Test and release
      • Monitor and improve
      • Grow users, and
      • Monetize with Play

    Each objective highlights the three metrics most important to that goal, giving you a quick grasp of how your app is doing at a glance, as well as how those metrics have changed over time. For example, you can now easily compare between your latest production release against your app’s overall performance, helping you to quickly identify any issues. In the screenshot below, the latest production release has a crash rate of 0.24%, a large improvement over the 28-day average crash rate shown under “Monitor and Improve.”

    screen recording of the redesigned app dashboard in Google Play Console

    The redesigned app dashboard in Play Console helps you see your most important metrics at a glance.

    At the top of the page, you’ll see the status of your latest release changes prominently displayed so you know when it’s been reviewed and approved. If you’re using managed publishing, you can also see when things are ready to publish. And based on your feedback, engagement and monetization metrics now show a comparison to your previous year’s data so you can make quick comparisons.

    The new app dashboard also keeps you updated on the latest news from Play, including recent blog posts, new features relevant to your app, and even special invitations to early access programs.

    In addition to what’s automatically displayed on the dashboard, we know many of you track other vital metrics for your role or business. That’s why we’ve added the “Monitor KPI trends” section at the bottom of your app dashboard. Simply scroll down and personalize your view by selecting the trends you need to monitor. This customized experience allows each user in your developer account to focus on their most important insights.

    Later this year, we’ll introduce new overview pages for each of the four core developer objectives. These pages will help you quickly understand your performance, showcase tools and features within each domain, and list recommended actions to optimize performance, engagement, and revenue across all your apps.

    Get actionable notifications when and where you need them

    If you spend a lot of time in Play Console, you may have already noticed the new notification center. Accessible from every page, the notification center helps you to stay up to date with your account and apps, and helps you to identify any issues that may need urgent attention.

    To help you quickly understand and act on important information, we now group notifications about the same issue across multiple apps. Additionally, notifications that are no longer relevant will automatically expire, ensuring you only see what needs your attention. Plus, notifications will be displayed on the new app dashboard within the relevant objectives.

    Improve app quality and performance with new Play Console metrics

    One of Play’s top goals is to provide the insights you need to build high-quality apps that deliver exceptional user experiences. We’re continuing to expand these insights, helping you prevent issues like crashes or ANRs, optimize your app’s performance, and reduce resource consumption on users’ devices.

    Users expect a polished experience across their devices, and we’ve learned from you it can be difficult to make your app layouts work seamlessly across phones and large screens. To help with this, we’ve introduced pre-review checks for incorrect edge-to-edge rendering, while another new check helps you detect and prevent large screen layout issues caused by letterboxing and restricted layouts, along with resources on how to fix them.

    We’re also making it easier to find and triage the most important quality issues in your app. The release dashboard in Play Console now displays prioritized quality issues from your latest release, alongside the existing dashboard features for monitoring post-launch, like crashes and ANRs This addition provides a centralized view of user-impacting issues, along with clear instructions to help you resolve critical user issues to improve your users’ experiences.

    The quality panel in the redesigned app dashboard in Google Play Console

    The quality panel at the top of the release dashboard gives you a prioritized view of issues that affect users on your latest release and provides instructions on how to fix them.

    A new “low memory kill” (LMK) metric is available in Android vitals and the Reporting API. Low memory issues cause your app to terminate without any logging, and can be notoriously difficult to detect. We are making these issues visible with device-specific insights into memory constraints to help you identify and fix these problems. This will improve app stability and user engagement, which is especially crucial for games where LMKs can disrupt real-time gameplay.

    The quality panel in the redesigned app dashboard in Google Play Console

    The low memory kill metric in Android vitals gives you device-specific insights into low memory terminations, helping you improve app stability and user engagement.

    We’re also collaborating closely with leading OEMs like Samsung, leveraging their real-world insights to define consistent benchmarks for optimal technical quality across Android devices. Excessive wakelocks are a leading cause of battery drain, a top frustration for users. Today, we’re launching the first of these new metrics in beta: excessive wake locks in Android vitals. Take a look at our wakelock documentation and provide feedback on the metric definition. Your input is essential as we refine this metric towards general availability, and will inform our strategy for making this information available to users on the Play Store so they can make informed decisions when choosing apps.

    Together, these updates provide you with even more visibility into your app’s performance and quality, enabling you to build more stable, efficient, and user-friendly apps across the Android ecosystem. We’ll continue to add more metrics and insights over time. To stay informed about all the latest Play Console enhancements and easily find updates relevant to your workflow, explore our new What’s new in Play Console page, where you can filter features by the four developer objectives.



    Source link

  • Debugging Projects in Godot | Kodeco

    Debugging Projects in Godot | Kodeco


    It might come as a surprise, but not all code works on the first try. (Insert surprised copyright-safe yellow electrical rodent here)

    For this reason, most integrated development environments (IDEs) include a debugger that allows the developer to spot and solve issues during the several development iterations. This is illustrated by the following pseudocode:

    while developing == true:
        code
        test
        debug

    When developing a game, however, there are other issues to think about, such as game balance or verifying behaviors that might be too fast or subtle to notice during gameplay.

    Think about it. You carefully crafted your game’s challenge level, so you want to make sure it’s up to the challenge. But how can you count the number of enemies in a game when they’re moving around and shooting at you?
    You might want to check the game balance. Is the number of enemies spawned at a given instant what you expect? Did the power-up add the damage boost you expected?

    These are just a few of the questions you might want to answer while testing your game. This is where Godot’s debug tools come in handy, helping you test and verify all that.

    Getting Started

    The example project is the same from the Publishing Your Godot Project to itch.io tutorial. However, for this article, the code was changed to enhance the gameplay experience. Unfortunately, the game broke in the process and you need to find what’s wrong with it using the debug tools. How convenient! :]

    You can download the project using the Download materials links at the top and bottom of this article. Note that this project requires Godot 4.3 or newer to run.

    The starting project has the same structure as in the previous article, but three files have changed: projectile.gd, enemy_ship.gd, and main_game.gd.

    Now is a good time to download and run the project to review how it’s working and notice how the bugs influence the game. The main issue you’ll notice is that it’s impossible to destroy the enemy ships, although they can destroy your ship, so it’s debugging time!

    Overview of the Debug Tools

    Godot has a set of powerful debug tools you can use to review code for logic errors, or graphics for performance issues, or even to get an x-ray of how the game is using its processing time.

    Although there’s a Debug menu at the top of the screen, this article will focus on the tools accessible through the Debugger panel at the bottom of the screen, because these are the tools that gather information when executing the project through the Run the project button.

    Debugger Panel

    The debugger panel, located at the bottom of the screen by default, is accessible from the Debugger option at the bottom of the window, to the right of the Output option. The following picture shows the debug panel:

    The debug panel

    At the panel’s top, you can see a few tabs. From left to right, the tabs are:

    1. Stack trace: Shows the execution stack, the context and its variables, and allows for controlling how the game executes during the debug session. You’ll learn more about this tab later in this article.
    2. Errors: Shows the error and warning messages during the game execution.
    3. Profiler: Shows which code is running and how it affects the game performance. You’ll learn more about this tab later in this article.
    4. Visual profiler: Displays a graph showing which code is running and how much time it takes for execution. You’ll learn more about this tab later in this article.
    5. Monitors: Contains graphs of game information, such as frames per second (fps), memory usage, scene nodes, and more. The data from the debug session is saved even after the session is over, so it’s possible to review it even after execution.
    6. Video RAM: Shows a list of resources and how much video RAM they use while running, as well as the grand total at the top of the panel.
    7. Misc: Monitors and identifies the control nodes clicked during runtime.
    8. Network Profiler: Contains the list of all nodes communicating over Godot’s multiplayer API and how much data each one of them received or sent during the debug session.

    This article focuses on tabs 1, 2, 3, 4 and 5. However, feel free to examine the others using the same project. Some of them, such as Network Profiler won’t have any interesting information, though, as the game doesn’t use the multiplayer API in any point.

    Using Breakpoints

    After executing the game, you should have noticed that the main issue is that it’s impossible to destroy the enemy ships. So, logically, there must be a problem with the function invoked when damaging the enemy ships — maybe the ships don’t take damage when they should?

    To test if this is true, examine the function that deals damage to the enemies: open projectile.gd and find the damage_body function. The function code is:

    func damage_body(body: Node2D) -> void:
        # 1
        body.take_damage(3)
        # 2
        create_explosion() 
        # 3
        queue_free()       

    This code does the following:

    1. When the bullet collides with the enemy ship, it reduces the ship’s health by 3 points;
    2. An explosion appears on the point where the collision happened;
    3. The bullet is removed from memory;

    This is a straightforward function, and its logic seems to be correct. How can it not be working? Wouldn’t it be great if there was a way of getting a deeper look at how the code is working? That is where breakpoints come in, allowing you to halt the code execution and dig deeper to discover the problem.

    Breakpoints

    When analyzing code, the error might not be obvious just by looking at the code; you might want to have a look at the code during runtime. To do just that, you’ll need to use breakpoints and watches, which work together to assist and verify what the code is doing.

    When you define a breakpoint, Godot knows it will need to execute the project normally up to that point. After that, it halts execution and allows you to control how fast the code should execute, and lets you see which code executes in case of conditionals or loops.

    The description should be kind of abstract now, but you’ll see that in practice it’s very simple and handy!



    Source link

  • The Fourth Beta of Android 16



    Posted by Matthew McCullough – VP of Product Management, Android Developer

    Today we’re bringing you Android 16 beta 4, the last scheduled update in our Android 16 beta program. Make sure your app or game is ready. It’s also the last chance to give us feedback before Android 16 is released.

    Android 16 Beta 4

    This is our second platform stability release; the developer APIs and all app-facing behaviors are final. Apps targeting Android 16 can be made available in Google Play. Beta 4 includes our latest fixes and optimizations, giving you everything you need to complete your testing. Head over to our Android 16 summary page for a list of the features and behavior changes we’ve been covering in this series of blog posts, or read on for some of the top changes of which you should be aware.

    Android 16 Release timeline showing Platform Stability milestone in April

    Now available on more devices

    The Android 16 Beta is now available on handset, tablet, and foldable form factors from partners including Honor, iQOO, Lenovo, OnePlus, OPPO, Realme, vivo, and Xiaomi. With more Android 16 partners and device types, many more users can run your app on the Android 16 Beta.

    Android 16 Beta Release Partners: Google Pixel, iQOO, Lenovo, OnePlus, Sharp, Oppo, RealMe, vivo, Xiaomi, and Honor

    Get your apps, libraries, tools, and game engines ready!

    If you develop an SDK, library, tool, or game engine, it’s even more important to prepare any necessary updates now to prevent your downstream app and game developers from being blocked by compatibility issues and allow them to target the latest SDK features. Please let your developers know if updates to your SDK are needed to fully support Android 16.

    Testing involves installing your production app or a test app making use of your library or engine using Google Play or other means onto a device or emulator running Android 16 Beta 4. Work through all your app’s flows and look for functional or UI issues. Review the behavior changes to focus your testing. Each release of Android contains platform changes that improve privacy, security, and overall user experience, and these changes can affect your apps. Here are several changes to focus on that apply, even if you aren’t yet targeting Android 16:

      • Broadcasts: Ordered broadcasts using priorities only work within the same process. Use other IPC if you need cross-process ordering.
      • ART: If you use reflection, JNI, or any other means to access Android internals, your app might break. This is never a best practice. Test thoroughly.
      • 16KB Page Size: If your app isn’t 16KB-page-size ready, you can use the new compatibility mode flag, but we recommend migrating to 16KB for best performance.

    Other changes that will be impactful once your app targets Android 16:

    Get your app ready for the future:

      • Local network protection: Consider testing your app with the upcoming Local Network Protection feature. It will give users more control over which apps can access devices on their local network in a future Android major release.

    Remember to thoroughly exercise libraries and SDKs that your app is using during your compatibility testing. You may need to update to current SDK versions or reach out to the developer for help if you encounter any issues.

    Once you’ve published the Android 16-compatible version of your app, you can start the process to update your app’s targetSdkVersion. Review the behavior changes that apply when your app targets Android 16 and use the compatibility framework to help quickly detect issues.

    Two Android API releases in 2025

    This Beta is for the next major release of Android with a planned launch in Q2 of 2025 and we plan to have another release with new developer APIs in Q4. This Q2 major release will be the only release in 2025 that includes behavior changes that could affect apps. The Q4 minor release will pick up feature updates, optimizations, and bug fixes; like our non-SDK quarterly releases, it will not include any intentional app-breaking behavior changes.

    Android 16 2025 SDK release timeline

    We’ll continue to have quarterly Android releases. The Q1 and Q3 updates provide incremental updates to ensure continuous quality. We’re putting additional energy into working with our device partners to bring the Q2 release to as many devices as possible.

    There’s no change to the target API level requirements and the associated dates for apps in Google Play; our plans are for one annual requirement each year, tied to the major API level.

    Get started with Android 16

    You can enroll any supported Pixel device to get this and future Android Beta updates over-the-air. If you don’t have a Pixel device, you can use the 64-bit system images with the Android Emulator in Android Studio. If you are currently on Android 16 Beta 3 or are already in the Android Beta program, you will be offered an over-the-air update to Beta 4.

    While the API and behaviors are final and we are very close to release, we’d still like you to report issues on the feedback page. The earlier we get your feedback, the better chance we’ll be able to address it in this or a future release.

    For the best development experience with Android 16, we recommend that you use the latest Canary build of Android Studio Narwhal. Once you’re set up, here are some of the things you should do:

      • Compile against the new SDK, test in CI environments, and report any issues in our tracker on the feedback page.

    We’ll update the beta system images and SDK regularly throughout the Android 16 release cycle. Once you’ve installed a beta build, you’ll automatically get future updates over-the-air for all later previews and Betas.

    For complete information on Android 16 please visit the Android 16 developer site.



    Source link

  • Most Coachella Attendees Buy Tickets with Buy Now, Pay Later

    Most Coachella Attendees Buy Tickets with Buy Now, Pay Later


    Coachella, the music festival that occurred across two weekends this month, drew crowds of 125,000-plus attendees each day.

    A report published by Billboard last week shows that most of the crowd, about 60%, used Coachella’s payment plan system to pay for their $600-and-up tickets. The plan allows attendees access to Coachella with an upfront cost of as little as $49.99.

    Tickets started at $649 for the first weekend of Coachella from April 10 through 12 and $600 for the second weekend from April 17 through 19. People reported that tickets used to cost $429 per weekend in 2020. When Coachella started in 1999, tickets were $50.

    Related: Jeff Bezos Was Caught on Video Dancing at Coachella, But It’s His ‘$12 Amazon Shirt’ That Has the Internet in Stitches

    The festival first began offering the buy-now-pay-later option in 2009, and at the time, only 18% of attendees tapped into it, per People.

    Coachella music festival 2025. Credit: Getty Images

    Coachella partnered with ticketing company AXS to offer the buy now, pay later payment plan, which enables the festival goer to pay off their ticket over three months. Coachella does not charge interest for the ticket purchase, but does require that those who opt for the payment plan pay a $41 fee for using the service, which amounts to about 8% of the ticket price. The average credit card interest rate, in comparison, is about 20%.

    Most fans bought tickets to Coachella after the festival announced its musician lineup in November, revealing that Lady Gaga, Travis Scott, Green Day, Post Malone, and Benson Boone were headliners. Anyone who bought tickets before Jan. 25 and opted for the payment plan had the price of their ticket divided into three equal payments, with the final payment deducted from the attendee’s account in March, per Billboard.

    If payments were more than 10 days late, the order was automatically cancelled and the fan given a credit for future festivals. The credit expires one year after being issued.

    Related: Google’s Founders Once Interviewed Their CEO at Burning Man. Now the Desert Festival Is Struggling to Sell Tickets.

    Coachella makes more than $115 million in ticket sales on average per year. Artists who perform at the festival can earn up to $5 million per weekend.



    Source link