Home Blog Page 8

ios – How one can use a Conditional inside a SwiftUI Picker


I’ve a picker the place I need to lock any index that isnt -1 behind a paywall:

Picker("", choice: $captureDelegate.userSelectedPeopleCount) {
                    ForEach(-1...4, id: .self) { i in
                        HStack(spacing: 68) {       //HStack proven the picker is collapsed
                            Picture(systemName: i == -1 ? "eye.slash.fill" : self.pictures[i])
                                .resizable()
                                .body(width: 17, top: 17)
                                .rotationEffect(rotationAngle)

                            Textual content(i == -1 ? "" : "(i)")
                                .font(.system(dimension: 40))
                                .rotationEffect(rotationAngle)
                            
                        }
                        .tag(i)
                        .rotationEffect(rotationAngle)
                        
                      
                    }
                }

I need to add a picture in between the picture and textual content when the picker is expanded and when the person clicks on one of many choices above -1 (without having unlocked professional) it ought to take them to the acquisition web page. that is my try:

   Picker("", choice: $captureDelegate.userSelectedPeopleCount) {
                    ForEach(-1...4, id: .self) { i in
                        HStack(spacing: 68) {       //HStack proven the picker is collapsed
                            Picture(systemName: i == -1 ? "eye.slash.fill" : self.pictures[i])
                                .resizable()
                                .body(width: 17, top: 17)
                                .rotationEffect(rotationAngle)
                            
                            if i >= 0 && purchaseManager.hasUnlockedPro {
                                Picture(systemName: "crown.fill")
                                    .resizable()
                                    .body(width: 17, top: 17)
                                    .rotationEffect(rotationAngle)
                            }

                            Textual content(i == -1 ? "" : "(i)")
                                .font(.system(dimension: 40))
                                .rotationEffect(rotationAngle)
                            
                        }
                        .tag(i)
                        .rotationEffect(rotationAngle)
                        
                      
                    }
                }

The result’s that’s doesn’t even present this new picture however I additionally tried changing the textual content with it and it additionally simply is clean:

        if i >= 0 && !purchaseManager.hasUnlockedPro {
            Picture(systemName: "crown.fill")
                .resizable()
                .body(width: 17, top: 17)
                .rotationEffect(rotationAngle)
        } else {
            Textual content(i == -1 ? "" : "(i)")     
                .font(.system(dimension: 40))
                .rotationEffect(rotationAngle)
        }

How do you management which choices in a Picker are locked behind a paywall in SwiftUI?

Tech and Coronary heart: How Expertise and Volunteerism Assist Aged Nicely-Being



 

This weblog was written by Donna Jackson, Senior Strategic Contract Negotiator at Cisco, world co-lead of Cisco’s Grownup Caregivers Inclusive Group, and Founder and Govt Director of the Noble Energy Basis and its Age To Age® program. By a community of worldwide volunteers, Age To Age® helps the aged fight loneliness and isolation by connecting them to their family members—anyplace on this planet—utilizing the Age To Age® platform and Cisco’s Webex conferencing know-how.

 


April is World Volunteer Month. Throughout this time of 12 months, I’m reminded of the various Cisco volunteers who’ve given their time and skills to broaden the attain of the Noble Energy Basis and Age To Age® program.

From Ache to Function: The Age To Age® Story

The concept to launch Noble Energy Basis and the Age To Age® program got here from a devastating state of affairs that my circle of relatives and I went by way of, wherein caregiver burnout resulted in us not having alternatives to see our mom. This was an avoidable state of affairs, and I knew that know-how might be a part of an answer the place we might assist cut back loneliness and isolation for seniors and deal with caregiver burnout.

From designing and engineering the platform to connecting folks, Cisco workers’ selflessness has introduced our aged neighborhood nearer to their family members. Listed here are a number of of my Age To Age® program volunteer highlights:

Intercontinental Connections: Donna and Aldo’s Story

In the course of the COVID-19 pandemic, I had the nice fortune of assembly a lady in her late 80s residing in North Carolina who desperately needed to reconnect together with her cousins in Italy. By the Age To Age® app, which facilitates connecting and scheduling volunteer visits with the aged, I used to be launched to Aldo, a Cisco worker based mostly in our Rome workplace. Aldo occurred to be visiting the very small Italian coastal village the place this girl’s cousins stay. It was a contented and fortuitous coincidence that we needed to make the most of, so we arrange a gathering for the household to reconnect.

The reunion was great! Though a number of the relations had been aged and partly listening to impaired, and neither celebration proficiently spoke the opposite’s language, the dialog went easily because of advances in Cisco’s know-how, utilizing enhanced decibels and closed captioning translations. The spotlight of the gathering was when the girl realized Aldo’s title. Aldo was additionally the title of her late father, a coincidence that took the connection to a different degree, making it really feel much more particular and intentional.

Phrases can’t totally describe the way it felt to allow a connection between family members by way of know-how we use each day. Assembly a piece colleague from throughout the globe-someone I possible wouldn’t have met underneath regular circumstances-made the expertise much more significant.

Taking a Private Expertise to One other Degree: Michael’s Story

Michael attended one of many Lunch-and-Study classes we organized for Cisco workers to focus on the work of the Noble Energy Basis by way of its Age To Age® program. This system’s function and strategy resonated deeply with him. “I used to be a caregiver to each of my mother and father, and after attending the Lunch-and-Study, I felt a private connection to this system. Quickly after, I volunteered to attach a person who had been admitted to a medical facility along with his spouse and daughters.

Touring a number of hours each day to go to him had grow to be more and more troublesome for the person’s household. The flexibility to take care of day by day visits by way of a easy laptop connection was invaluable. “The household stated this service was a solution to prayer, and I skilled such success from having the ability to positively influence their lives throughout this powerful season of life,” Michael shared.

A Double Love Connection: Sonya and Thomas’ Story

Sonya and Thomas started relationship after assembly at Cisco. Sonya had heard about Age To Age® and was desperate to get entangled. The request she selected coincided with a protracted weekend to the seaside that she and Thomas had deliberate for themselves. “After we found the go to was to attach an aged man along with his girlfriend, it felt much more particular to us,” Sonya stated.

The growing old couple had lived in the identical assisted residing neighborhood and noticed one another each day. Nevertheless, his caregiver son and household had relocated a number of hours away, they usually weren’t tech savvy. Sonya shared, “As our romance was budding, it was great to witness the aged couple’s love story, and to be a part of connecting them after a number of months of them being aside.” Sonya and Thomas had been so moved by the expertise that they proceed to be devoted volunteers. “We’re excited and hopeful to be a part of extra great tales like this,” Sonya stated.

Enjoyable reality,” Sonya shared. “Thomas and I married shortly after that Age To Age® go to, and we now have two youngsters.

From Native to World

In 2017, I used to be given the chance to “pitch” the work of Noble Energy Basis and the Age To Age® program to my leaders at Cisco. As a direct outcome, a partnership fashioned, and we had been in a position to scale this system’s influence from native to world by way of Webex and a worldwide workforce. Cisco was fairly actually the automobile by way of which I used to be in a position to flip the ache of my household’s expertise right into a function a lot higher than I ever imagined.

Research present that social engagement for lonely or remoted seniors is vital, in some situations, extra necessary than day by day medicines. Because the Age To Age® program has grown, we’ve measured the quick results of the social connections made by way of visits and located the research to be true. Our recorded statistics constantly mirror improved important indicators, consuming, urge for food, and extra restful sleep.

Be A part of Increasing Our Impression

As of 2024, by way of the work of greater than 150 Cisco worker volunteers throughout the globe, we’ve enabled over 3,000 hours of connections by way of the Age To Age® program, and that quantity continues to develop. I’m so grateful to volunteers like Aldo, Michael, Sonya, and Thomas, who’ve enabled so many connections, and to the Cisco engineers (Yee F., Vinny M., Susila M., Natarajan P., Chheang D., Vyshnavi P., Adrian S., Vikrant N., and Hui Eng L.) who helped to create the Age To Age® app for our nonprofit.

In collaboration with the Cisco world accomplice neighborhood, we’ve a chance to scale this system’s influence and help much more aged purchasers and their caregivers.

 

If you need to be taught extra about partnering with the Noble Energy Basis, please contact information@noblestrengthfoundation.org.

 

It’s also possible to:


We’d love to listen to what you suppose. Ask a Query, Remark Beneath, and Keep Related with #CiscoPartners on social!

Cisco Companions Fb  |  @CiscoPartners X/Twitter  |  Cisco Companions LinkedIn

Share:



How Dropbox leverages testing to keep up excessive stage of belief at scale | by Jose Alcérreca | Android Builders | Apr, 2025


That is half 2 of the Testing at scale collection of articles the place we requested business specialists to share their testing methods. On this article, Ryan Harter, Workers Engineer at Dropbox, shares how the form of Dropbox’s testing pyramid modified over time, and what instruments they use to get well timed suggestions.

With multiple billion downloads, the Dropbox app for Android has to keep up a top quality bar for a various set of use instances and customers. With lower than 30 Android engineers, guide testing and #yolo isn’t sufficient to keep up confidence in our codebase, so we make use of quite a lot of totally different testing methods to make sure we are able to frequently serve our customers wants.

Since Dropbox makes it simple to entry your information throughout all your units, the Android app has to help viewing as lots of these information as attainable, together with media information, paperwork, images, and all the variations inside these classes. Moreover, options like Digicam Uploads, which routinely backs up all your most essential images, require deep integration with the Android OS in ways in which have modified considerably over time and throughout Android variations. All of this wants to repeatedly work for our customers, with out them having to fret in regards to the complexity, as a result of the very last thing anybody desires is to fret that they may lose their information.

Whereas the dimensions and distribution of the Android crew at Dropbox has modified all through the years, it’s crucial that we’re in a position to constantly construct and refine options inside the app whereas sustaining the extent of belief from our customers that we’ve change into identified for. To assist underscore how Dropbox has been in a position to foster that belief, I’d prefer to share some ways in which our testing methods have modified over time.

Whereas automated testing has at all times been an essential a part of engineering tradition at Dropbox, it hasn’t at all times been simple on Android. Years in the past Dropbox invested in testing infrastructure that leaned closely on Finish-to-Finish (E2E) testing. Constructed on Android’s instrumentation assessments, we developed check helpers for options within the app following the check robotic sample. This enabled a big suite of assessments to be created that might simulate a person shifting all through the app, however got here with its personal vital prices.

Like many Android initiatives on the time, the Dropbox app began out as a monolithic app module, however that wasn’t sustainable in the long term. Work was performed to decompose the monolith right into a extra modular structure, however the E2E check suite wasn’t prioritized on this effort as a result of advanced interaction of dependencies. This left our E2E check suite as a monolith of its personal, leading to check code that didn’t exist alongside the characteristic code it exercised, permitting them to simply be missed and change into outdated.

Moreover, the lengthy construct occasions that include monolithic modules with many dependencies combined with the assessments being executed on emulators in our customized steady integration (CI) setting meant that the suggestions cycle for these E2E assessments was gradual. This resulted in engineers feeling incentivised to take away failing assessments as an alternative of updating them.

Because the Android ecosystem embraced automated testing an increasing number of, with the introduction of useful libraries like Espresso, Robolectric, and help for unit testing constructed immediately into Gradle, Dropbox saved up with these modifications by shifting from the heavy reliance on E2E assessments in direction of an increasing number of unit assessments, filling out the underside layer of the beforehand inverted testing pyramid. This was a big win for check protection inside the app, and allowed us to roll out high quality assurance practices like code protection baselines, to make sure that we frequently improved the reliability of the product because it moved ahead.

Over time, as unit testing grew to become simpler and simpler and engineers grew to become an increasing number of pissed off with the gradual suggestions cycles of E2E assessments, our testing pyramid grew to become lopsided within the different route. We had confidence in our unit assessments and the infrastructure supporting them, however our E2E assessments aged with out a lot help, changing into an increasing number of unreliable, to the purpose that we principally ignored their failures. Exams that may’t be trusted find yourself changing into a upkeep burden and supply little worth, so we acknowledged that one thing wanted to alter.

Over the previous yr we’ve doubled down on our deal with reliability. We’ve invested in our check infrastructure to make sure that engineers will not be solely in a position to, however incentivised to jot down priceless assessments throughout all layers of the testing pyramid. Along with technical funding in code and tooling, that has additionally required that we take the time to judge the issues we check, and the way we check them, and ensure your entire crew has a greater understanding of which instruments to make use of when.

Unit testing

We proceed to spend most of our efforts writing unit assessments. These are quick, targeted assessments that present fast suggestions, and function our first line of protection in opposition to regressions. We write JUnit assessments at any time when we are able to, and fall again to instrumentation assessments when we have to. Robolectric’s interoperability with AndroidX Take a look at has allowed us to maneuver lots of our instrumentation assessments to JVM-based unit assessments, making it even simpler to fulfill our check protection targets.

Talking of check protection targets, the unit testing layer is the solely layer that we use to find out our code protection. By default we goal 80% check protection, although we’ve a course of to override this goal for circumstances by which unit testing is both not priceless, or infeasible.

  • Observe: Whereas we use commonplace JaCoCo tooling to judge our check protection, its lack of deep understanding of Kotlin presents some challenges. As an example, we haven’t but discovered a strategy to inform JaCoCo that the generated accessors, toString and hashcode of behaviorless information courses don’t require check protection. We’ve been experimenting and contemplating options to make sure that we’re not writing brittle assessments that don’t present worth, however for now we’re caught with issuing protection overrides for these instances.

E2E testing

Over the previous a number of months we’ve been renewing funding in our automated E2E check suite. This check suite is ready to alert us to extraordinarily essential points that unit assessments merely can’t establish, like OS integration points or surprising API responses. Due to this fact we’ve labored onerous to enhance our infrastructure to make assessments simpler for engineers to run regionally, we’ve audited and eliminated flaky or invalid assessments, and labored on documentation and coaching to make sure that we help our engineers within the creation and upkeep of our E2E check suite.

Change in E2E check counts earlier than and after check suite enchancment effort.

As I discussed above, our E2E assessments simulate a person shifting all through the app. Which means the duty of defining our E2E check instances is greater than merely an engineering downside. Due to this fact, we developed steerage to assist engineers work with product and design companions to outline check instances that characterize true use instances.

We just lately launched a follow of utilizing a correct Definition of Completed for growth work. This quantities to a guidelines of things that should be accomplished to ensure that a challenge to be thought-about “performed”, which is outlined and agreed upon initially of the challenge. Our commonplace guidelines consists of the declaration of E2E check instances for the challenge, which ensures that we’re including check instances in a considerate method, bearing in mind the worth and objective of these assessments, as an alternative of concentrating on arbitrary protection numbers.

Screenshot testing

One other dimension of our assessments that we’ve ramped up lately is screenshot testing. Screenshot assessments enable us to validate in opposition to visible regressions, guaranteeing that views render correctly in gentle and darkish mode, totally different orientations, and totally different type elements.

In unit assessments we leverage Paparazzi for screenshot testing. This enables us to jot down quick, remoted assessments and we discover it’s greatest suited to testing particular person view or composable layouts, together with our design system parts.

We additionally discover worth executing screenshot assessments in additional full featured instrumentation assessments. For this, we use our personal Dropshots library, which helps screenshot testing on units and emulators. Since Dropshots executes screenshot assessments on actual (or emulated) units, it’s an effective way to validate system integrations like edge-to-edge show, the default window mode on Android 15 units.

Handbook testing

With all the funding we’ve made into automated testing you’d be forgiven for pondering that we do no guide testing, however even immediately that’s merely not possible. There are various workflows for which automated assessments would both be too onerous to jot down, or too onerous to validate. For instance, we’ve each unit and E2E assessments to validate that the app behaves appropriately when rendering file content material, however it may be onerous to programmatically validate file content material, and screenshot assessments can generally show too flaky.

For these instances, we use an online based mostly check case administration instrument to keep up an entire set of guide check instances, and a 3rd celebration testing service to execute the assessments prior to every launch. This enables us to catch points for which we haven’t but written assessments, or which require human judgement.

Testing has confirmed invaluable in figuring out high quality points earlier than they make it to customers, permitting us to earn our buyer’s belief. Provided that worth, we intend to proceed investing in testing to make sure that we are able to proceed to keep up prime quality and reliability. There are some things that we’re wanting ahead to sooner or later.

I’m at present within the strategy of increasing the performance of Dropshots to help a number of system configurations, which can enable us to carry out screenshot assessments throughout a broad vary of units with a single set of assessments. For the reason that Dropbox app works throughout many alternative type elements, will probably be priceless for us to concurrently run our screenshot check suite on quite a lot of units or emulators to stop regressions on much less frequent type elements.

Moreover, we’re starting to experiment with Compose Preview Screenshot Testing, which permits our Compose Preview features to serve double obligation by dashing up growth cycles whereas additionally getting used to guard in opposition to regressions.

Lastly, we intend to proceed guaranteeing that we’ve a great steadiness of the best sorts of assessments. Balancing our testing pyramid to make sure that our funding in testing serves our reliability targets as an alternative of chasing arbitrary protection targets. We’ve already seen the worth {that a} wholesome check suite can present, and we’ll proceed investing on this space to make sure that we proceed to be worthy of belief.

Starship Applied sciences surpasses 8M autonomous deliveries

0


chart illustrating Starships growth in deliveries per year.

Starship reached the 8M deliveries milestone in early 2025. | Credit score: Starship Applied sciences

Starship Applied sciences Inc. final week introduced that its methods have accomplished greater than 8 million autonomous deliveries and traversed over 10 million miles globally. The San Francisco-based firm’s sidewalk robots have change into a well-known sight for 1000’s of consumers worldwide, delivering groceries, meals, and different provides.

“Whereas many robotics corporations are nonetheless launching pilot initiatives with simply a few robots or constructing their first prototypes, we’ve confirmed ourselves as a real-world answer,” acknowledged Ahti Heinla, co-founder and CEO of Starship. “With hundreds of thousands of deliveries behind us, we’re not simply imagining the long run — we’re already working in it.”

Based in 2014 by Skype co-founders Heinla and Janus Friis, the firm has quietly established itself as a frontrunner within the sidewalk supply robotic class. Starship mentioned its newest achievement, with over 2,000 robots working at SAE Degree 4 autonomy throughout greater than 150 areas in six international locations, underscores its sustained development and technological development.

Starship is a number one autonomy supplier

Whereas most sidewalk supply robotic suppliers don’t disclose their supply volumes, Starship mentioned its scale is spectacular even when put next with leaders in adjoining sectors.

chart illustrating starships 8M deliveries vs uber and zipline.

Starship has steadily grown its fleet of autonomous robots. | Credit score: Starship Applied sciences

Supply robotic market nonetheless scaling

The worldwide marketplace for supply robots might increase at a 64% compound annual development price (CAGR) between 2022 and 2032, reaching 4.7 million energetic robots by the tip of the last decade, based on Transforma Insights.

Because the autonomous car panorama continues to evolve, Starship touted its 8 million deliveries, which contain crossing 125,000 roads and driveways per day or about two crossings per second.

The corporate additionally mentioned it has targeted on sustainability, with its electrical robots utilizing about the identical quantity of power in a mean supply as boiling a small kettle of water. Starship mentioned its robots have saved over 500 tons of CO2 from getting into the ambiance in Europe, offering a substitute for getting groceries with vehicles.


SITE AD for the 2025 Robotics Summit registration.
Register now so you do not miss out!


Cloudbrink pushes SASE boundaries with 300 Gbps information heart throughput



These core elements are functionally desk stakes and don’t actually serve to distinguish Cloudbrink towards its myriad opponents within the SASE market. The place Cloudbrink seems to be to distinguish is at a technical degree by a sequence of improvements together with:

  1. Distributed edge structure: The corporate has decoupled software program from {hardware}, permitting their platform to run throughout 800 information facilities by leveraging public clouds, telco networks and edge computing infrastructure. This strategy reduces community latency from 300 milliseconds to between 7 and 20 milliseconds, the corporate says. This density dramatically improves TCP efficiency and responsiveness.
  2. Protocol optimization: Cloudbrink developed its personal algorithms for SD-WAN optimization that deliver enterprise-grade reliability to final mile hyperlinks. These algorithms considerably enhance effectivity on shopper broadband connections, enabling enterprise-grade efficiency over customary web hyperlinks.
  3. Built-in safety stack: “We’ve been in a position to produce safe speeds at line fee on our platform by bringing safety to the networking stack itself,” Mana famous. Moderately than treating safety as a separate overlay that degrades efficiency, Cloudbrink integrates safety capabilities instantly into the networking stack.

The answer consists of three core elements: shopper software program for person gadgets, a cloud administration airplane, and non-compulsory information heart connectors for accessing inner purposes. The shopper intelligently connects to a number of edge nodes concurrently, offering redundancy and application-specific routing optimization.

Cloudbrink expands world attain

Past its efforts to extend throughput, Cloudbrink can also be rising its world footprint. Cloudbrink at present introduced a worldwide enlargement by new channel agreements and the opening of a Brazil workplace to serve rising markets in Latin America, Korea and Africa. The enlargement consists of unique partnerships with WITHX in Korea, BAMM Applied sciences for Latin America distribution and OneTic for African markets.

The corporate’s software-defined FAST (Versatile, Autonomous, Sensible and Momentary) Edges expertise allows fast deployment of factors of presence by leveraging current infrastructure from a number of telcos and cloud suppliers.

Trying ahead: Safe, versatile connectivity (not AI)

As enterprises proceed to embrace hybrid work fashions, Cloudbrink is positioning itself as a next-generation answer. The corporate plans to proceed increasing its safe entry capabilities, with a selected deal with bettering public web connection safety. Notably, the corporate takes a measured strategy to AI, utilizing it strategically for connection optimization fairly than treating it as a advertising buzzword.

“We’re a bunch of sensible folks and operators… in fact, we use all the brand new algorithms which might be at our disposal, however there’s simply an excessive amount of round generative AI, it’s a way to an finish,” Mana stated. “No level in simply throwing that buzzword round for the heck of it. In order that’s what we attempt to resist ourselves from simply taking that simple route and simply giving generative AI as a solution to all the things.”