adplus-dvertising
Connect with us

Tech

With GitHub, Canadian company TELUS aims to bring 'focus, flow and joy' to developers – Transform – Microsoft

Published

 on


Katie Peters could have used an advocate as she embarked on her tech career.

In her first year at the University of British Columbia, Peters’ computer science classes were split almost evenly along gender lines. But most of her female classmates soon switched majors, and by Peters’ final year there were typically only two or three women in those classes. She felt increasingly isolated and was uncomfortable asking for help.

After graduating with a computer science degree in 2012, Peters took a job as a software developer for TELUS, a Canadian telecommunications company. Joining an organization with more than 90,000 employees, Peters initially found it challenging to make her way around its procedures and structure. So when the position of staff developer opened on TELUS’ new engineering productivity team last fall, Peters jumped at the opportunity.

300x250x1

“I wanted to be the person that I wish could have helped me,” says Peters, who started in the role last October. “There are so many complicated processes in a company as large as TELUS and it’s really difficult to navigate. You end up feeling stupid a lot of the time and you have to ask lots of questions. I don’t want other people to have to experience that. I want to make that better.”

Peters is ‘a brilliant developer and a brilliant technologist,’ says Justin Watts, head of TELUS’ engineering productivity team.

Peters is now helping lead an initiative aimed at changing TELUS’ culture to better empower its developers. Much of that effort is focused on encouraging widespread adoption of Microsoft’s code-hosting platform GitHub to help automate software development at TELUS and make it easier for the company’s roughly 4,000 developers to collaborate. TELUS recently made GitHub available companywide and signed an agreement with Microsoft to help manage its enterprise-level use of the platform and provide GitHub training to developers.

Justin Watts, head of developer experience for TELUS, says Peters’ experience as both a developer and a previous member of TELUS’ enterprise architecture team makes her ideally suited to help redefine the company’s approach to software development.

“This is all being driven by Katie and the vision she has,” says Watts, who heads the engineering productivity team. “Katie is great at capturing that relationship with the developer and what our goals are. She is a brilliant developer and a brilliant technologist.

“She’s seen as a really senior, influential mind in the company.”

Justin Watts, head of the engineering productivity team at TELUS.
Justin Watts.

Peters is already shaking things up. Drawing inspiration from “The Unicorn Project,” a 2019 novel by Gene Kim about a group of renegade developers seeking to overthrow the existing order and make work more fulfilling, Peters has replaced the usual staid presentation decks with ones featuring swirling designs, pink and purple tones and cartoon unicorns, and adopted the book’s mantra of bringing “focus, flow and joy” to developers.

Transform recently chatted with Peters over Microsoft Teams from her home in Vancouver, where she lives with her husband and 2-year-old daughter. The interview has been condensed for clarity and length.

TRANSFORM: Why was the engineering productivity team formed and what is its mission?

PETERS: We’ve been transitioning to the cloud for software development for a while, but it’s challenging. It greatly simplifies very complicated operations activities and turns those things into code. So instead of needing an ops professional to manually create a bespoke server for the developer to host their application, the definition of that server is standardized and codified in a way that can be stored and managed alongside the application code.

That makes it easier for a developer to manage it themselves, but they’re now expected to own that server definition, where sometimes they’ve never previously had exposure to the ops side of software development. That’s a really difficult transition for people. And a lot of legacy processes haven’t caught up to cloud development yet. We’re giving developers a lot more freedom, but it’s also a lot more responsibility in different areas than they might not have had experience in before. So we have to make that not a burden for them.

Our team exists to help developers make that cloud transition and to update all of that legacy process baggage to align with the new cloud paradigm.

TRANSFORM: Why did TELUS see a need to change how software development is done?

PETERS: We need to stay innovative and creative. We need to be able to react quickly to the market, and if we want to be able to do that, we need to give developers the time and the space and the safety to do that while also making sure that what they’re building is secure and reliable.

Streetscape photo showing the exterior of TELUS' headquarters in Vancouver, B.C.
TELUS’ headquarters in downtown Vancouver, British Columbia.

To enable us to move quickly without sacrificing security and reliability, we need to really make that developer experience our focus. I treat it as the developers are my customers, and what experiences can I give them so that they are inspired to keep pushing and keep innovating, and just unblock them as much as I can, to make it as simple and fast as I can so that they can keep innovating.

TRANSFORM: What role can GitHub play in helping developers shift to this new cloud paradigm?

PETERS: GitHub used to be just for storing the source code, but now it has a lot of other features. When you’re writing code, for example, you need to be able to plan that work and distribute it to people. We can use GitHub projects for that.

After you’ve developed code, there are tools you can use to tell you if there are problems with how you’ve written it. In the past, we would wait until we were trying to release that code to our customers before we would run those tests. So when things went wrong, it was really costly. Now, developers can push their code back to the public repository on GitHub for the rest of the team to see. Then we can run all of these automated tests and security scans, so it’s easier to make fixes right then, whereas in the old world, it was potentially months later they would get that feedback.

With GitHub taking over that developer lifecycle, that allows us to build in a lot of automation so we have end-to-end visibility on where developers are spending their time and what they’re doing. That’s good for metrics on how we can improve that experience and make it better for people.

TRANSFORM: GitHub is ultimately a tool. What other components are you thinking about in driving this cultural shift at TELUS?

PETERS: As a big company, TELUS can be a little formal. It’s hard for people to ask for help. We really wanted to change that culture. We wanted to be open and approachable and let people vent to us in a psychologically safe place to share their problems. That way, we can understand all the little things that add up to so much toil.

Photo of Katie Peters working at a computer in TELUS' headquarters and showing a slide with a unicorn from one of her signature presentation decks.
Peters draws inspiration from ‘The Unicorn Project,’ a novel about a group of renegade developers.

We have a lot of really creative people at TELUS, a lot of talented developers, and they come up with really interesting ways to deal with the status quo that don’t actually fix the problem for anyone else — it’s just a workaround that they’ve developed. We need people to feel safe coming to us with their problems and trust that we can help them solve them, so that we can then bring that to everybody and drive that improvement across the board.

TRANSFORM: How did your interest in computers start?

PETERS: My parents really wanted me to be interested in computers, so they bought me my own computer when I was a kid. They got me into robot building camps and software development camps and all sorts of stuff.

I started playing video games when I was 4 years old. I played Putt-Putt Goes to the Moon and Fatty Bear’s Birthday Surprise. I loved all sorts of video games. Morrowind was another big game for me. They had a modding community, and I learned a lot about computers in general by participating in that community. (Modding refers to the practice of altering content or creating new content for video games.)

I wanted to work in the video game industry, but when I was applying for co-op placements during university, I got into Sierra Wireless (a Canadian IoT solutions provider). As I was exposed to that industry, I liked the consistency and stability of the telco industry and the feeling that you’re contributing to something important. Providing internet to people is really important.

TRANSFORM: You said you felt at times like you have imposter syndrome. Did you feel that way particularly as a female developer?

PETERS: I’ve always had a lot of imposter syndrome, which I think is true for a lot of software developers. I’m not unique in that way. I do think it’s worse as a woman, but I think it’s just common in software development to have those kinds of feelings. The industry is kind of steeped in this mythology of like, really smart geeks who live and breathe computer science and build Google or Microsoft in their basement, and they’re all geniuses and always know everything about everything.

Photo taken at TELUS headquarters in Vancouver, B.C., showing two interior offices with chairs grouped around tables and views out windows.
TELUS, which employs around 4,000 developers, is using GitHub to transform its approach to software development.

There are really high expectations in the software industry in general, and I think everybody experiences that, but I think it’s amplified for a woman. Because the expectation, I think, at least when I started in the industry, was that I don’t actually know what I’m doing. I’m a poseur and I just got my place because I’m a woman. So I had to work really hard to appear extra smart. 

TRANSFORM: Is it important to you, as a woman in this role, to attract more female developers to the field? 

PETERS: Absolutely. When you’re the only woman, it can be really challenging. And when you have one or two women in a large group, sometimes you can be forced into this weird sense of competition with them. People are always comparing you to the other women.

But when there’s a critical mass of women, you really get to be comfortable working with other women who typically come from the same kinds of experiences. You get to open up a little bit in a way that you might not have been able to otherwise. Most women I encounter in computer science are so supportive and friendly.

It always makes me happy to see more women in the industry. Any opportunity I have to try to make that easier for somebody or to help somebody go in that direction, I’m very happy to be able to do that.

Top photo: Katie Peters stands on a deck at TELUS’ headquarters in Vancouver, B.C. (Justin Watts photo courtesy of Justin Watts; all other photos by Jennifer Gauthier)

Adblock test (Why?)

728x90x4

Source link

Continue Reading

Tech

The Future of MSP IT Companies

Published

 on

MSPs require tools that enable them to provide a comprehensive managed services experience, which means having one platform with all of the essential productivity, data availability, and security tools combined into an easy-to-use package.

This is one of the many pros of MSPs, as they can offer a one-stop shop for all of your IT needs.

Cybersecurity and emerging technology, including automation, are major trends for MSPs who look forward to the future. In coming research briefs we’ll address these topics more in-depth.

  1. Reliability

Opting for the appropriate managed service provider (MSP) for your business is a critical decision, which has far-reaching effects on daily operations. Finding a partner that is reliable and can meet all of its IT needs is essential to meeting those objectives successfully.

300x250x1

A reliable MSP will conduct an intensive assessment of your company’s infrastructure and processes to fully comprehend your IT requirements, offering services that best suit them for data plans, telecom options, business applications, and hardware needs.

MSPs also provide 24/7 monitoring and support, meaning if a problem does arise it can be handled instantly compared to waiting for assistance from an overburdened in-house tech team. This ensures consistent service, reducing downtime and lost revenue as a result.

  1. Scalability

As an MSP, your goal should be to expand the services you offer and increase revenue – whether that means expanding customer bases or adding innovative technologies.

But it is also essential to bear in mind that not all changes are scalable; some could impede on your business’s efficiency, leading to more expenses than profits – this phenomenon is known as diseconomies of scale, and it could spell doom for your enterprise.

Implementing new software solutions such as Tanium may require upgrading your infrastructure, which takes time and money. Working with an experienced IT partner is highly recommended to ensure that any upgrades made are scalable – they have evaluated many solutions that may work for your business and know which are ideal.

  1. Security

MSP companies can provide businesses with essential cybersecurity services that will assist in maintaining security. MSP companies can assist businesses with software deployment, patch management and configuration control as well as the creation and implementation of an unified threat detection and response platform to detect evolving threats.

An MSP can be an invaluable asset to smaller businesses with limited IT resources, but it must balance client needs against budgetary limitations and the risk of cyber breaches.

Customers should review MSP contracts carefully to ensure they provide adequate security measures, limit attack surface by enforcing multifactor authentication (MFA) on all accounts, and track unexplained failures in authentication. In addition, it’s wise to regularly review and delete MSP accounts when they’re no longer managing infrastructure.

  1. Flexibility

An outstanding MSP provides more than just scalability; they also have the flexibility needed to help clients find solutions tailored specifically to meet business needs and budget constraints, helping to avoid costly organizational downtime.

Working from home and cloud management are driving managed services market growth well past 2020, so MSPs that offer their clients access to tools and support will be well positioned to capitalize on this market shift and remain profitable long term.

An MSP that can offer additional services will also be able to reduce customer churn and boost its revenue per client, such as IT strategy consulting or backup and recovery solutions.

  1. Efficiency

MSPs offer many businesses an efficient and cost-effective method for handling IT. Their services tend to be much cheaper than what it would cost an enterprise to implement and manage on their own, and provide more flexibility and scalability than when the task falls on them alone.

MSPs typically specialize in specific aspects of technology or vendor management, enabling them to provide more effective IT solutions than an in-house team could. A good MSP also serves as a single point of contact and becomes familiar with their client’s business over time.

Outsourcing certain technology functions to a Canadian IT company can also lower overhead costs by freeing up internal employees to focus more on revenue-generating activities, leading to greater productivity and efficiency within a company.

 

Continue Reading

Tech

Apple Releases iOS 17 With StandBy, Live Voicemail, Improved Autocorrect, FaceTime Video Messages and Tons More

Published

 on

Apple today released iOS 17 and iPadOS 17, the latest operating system updates that are designed for the iPhone and iPad. As with all of Apple’s software updates, ‌iOS 17‌ and ‌iPadOS 17‌ are available for free. ‌iOS 17‌ is compatible with the ‌iPhone‌ XR/‌iPhone‌ XS and later, while ‌iPadOS 17‌ runs on the iPad mini 5 and later, the ‌iPad‌ 6 and later, iPad Air 3 and later, the second-generation 12.9-inch iPad Pro and later, all 11-inch ‌iPad Pro‌ models, and the 10.5-inch ‌iPad Pro‌.

Apple’s updated software, which is build 21A329, can be downloaded on eligible iPhones and iPads over-the-air by going to Settings > General > Software Update. It can take a few minutes for the updates to propagate to all users due to high demand.

While you download ‌iOS 17‌, make sure to check out our dedicated iOS 17 roundup for a full rundown of all of the features in the update. We’ve highlighted a few of the most notable additions below, but this is a huge update with hundreds of changes.

‌iOS 17‌ expands on last year’s Lock Screen updates with the addition of interactive widgets and StandBy, a new feature that turns the ‌iPhone‌ into a mini home hub when it is charging. You can now see voicemail transcriptions in real time, and leave video messages in FaceTime. ‌FaceTime‌ also now works on the Apple TV with tvOS 17.

300x250x1

With NameDrop, exchanging contacts is as simple as touching two phones together, and Messages has been overhauled with new safety features and updates to the way that stickers work. Autocorrect is better than ever, Spotlight search has been improved, private browsing in Safari is more secure with Face ID lock, and there’s now a mood tracking feature in the Health app.

Passwords can be shared in iCloud Keychain and AirTags can be shared among family members too, plus there are new features for the AirPods Pro. Apple has also added updates to Siri, Mail, Reminders, Notes, Home, and more. Full release notes for the update are below.

iOS 17 brings big updates to Phone, Messages, and FaceTime that give you new ways to express yourself as you communicate. StandBy delivers a new full-screen experience with glanceable information designed to view from a distance when you turn iPhone on its side while charging. AirDrop makes it easier to share and connect with those around you and adds NameDrop for contact sharing. Enhancements to the keyboard make entering text faster and easier than ever before. iOS 17 also includes updates to Widgets, Safari, Music, AirPlay, and more.

Phone
– Contact Posters let you customize how you appear on other people’s devices when you call them with a customized poster
– Live Voicemail displays a live transcription as someone leaves a message and allows you to pick up the call

Messages
– Stickers iMessage app brings all your stickers into one place including Live Stickers, Memoji, Animoji, emoji stickers, and your third party sticker packs
– Live Stickers can be created by lifting the subject from photos or videos and stylizing them with effects like Shiny, Puffy, Comic, and Outline
– Check In automatically notifies a family member or friend when you arrive at a destination safely and can share helpful information with them in case of a delay
– Audio message transcription is available for audio messages you receive so you can read them in the moment and listen later
– Search improvements help you find messages faster by allowing you to combine search filters such as people, keywords, and content types like photos or links to find exactly what you are looking for
– Swipe to reply to a message inline by swiping to the right on any bubble
– One-time verification code cleanup automatically deletes verification codes from the Messages app after using them with AutoFill in other apps

FaceTime
– Leave a video or audio message to capture exactly what you want to say when someone does not pick up your FaceTime call
– Enjoy FaceTime calls on Apple TV by using your iPhone as a camera (Apple TV 4K 2nd generation and later)
– Reactions layer 3D effects like hearts, balloons, confetti, and more around you in video calls and can be triggered with gestures
– Video effects allow you to adjust the intensity of Studio Lighting and Portrait mode

StandBy
– Full-screen experience with glanceable information like clocks, photos, and widgets designed to view from a distance when iPhone is on its side and charging in places such as your nightstand, kitchen counter, or desk
– Clocks are available in a variety of styles including Digital, Analog, Solar, Float, and World Clock, with elements you can personalize like the accent color
– Photos automatically shuffle through your best shots or showcase a specific album you choose
– Widgets give you access to information at a distance and appear in Smart Stacks that deliver the right information at the right time
– Night Mode lets clocks, photos, and widgets take on a red tone in low light
– Preferred view per MagSafe charger remembers your preference for each place you charge with MagSafe, whether that’s a clock, photos, or widgets

Widgets
– Interactive widgets let you take actions, like mark a reminder as complete, directly from the widget by tapping it on the Home Screen, Lock Screen, or in StandBy
– iPhone widgets on Mac enable you to add widgets from your iPhone to your Mac desktop

AirDrop
– NameDrop lets you exchange contact information with someone new by bringing your iPhones close together
– New way to initiate AirDrop allows you to share content or start a SharePlay session over AirDrop by bringing your iPhones close together

Keyboard
– Improved autocorrect accuracy makes typing even easier by leveraging a powerful transformer-based language model (iPhone 12 and later)
– Easier autocorrect editing temporarily underlines corrected words and lets you revert back to what you originally typed with just a tap
– Enhanced sentence corrections can correct more types of grammatical mistakes when you finish sentences (iPhone 12 and later)
– Inline predictive text shows single and multi-word predictions as you type that can be added by tapping space bar (iPhone 12 and later)

Safari and Passwords
– Profiles keep your browsing separate for topics like work and personal, separating your history, cookies, extensions, Tab Groups, and favorites
– Private Browsing enhancements include locking your private browsing windows when you’re not using them, blocking known trackers from loading, and removing identifying tracking from URLs
– Password and passkey sharing lets you create a group of passwords to share with trusted contacts that stays up to date as members of the group make changes
– One-time verification code AutoFill from Mail autofill in Safari so you can log in without leaving the browser

Music
– SharePlay makes it easy for everyone to control and play Apple Music in the car
– Crossfade smoothly transitions between songs by fading out the currently playing song while fading in the next so the music never stops

AirPlay
– Intelligent AirPlay device list makes finding the right AirPlay-compatible TV or speaker even easier by showing your devices in order of relevance, based on your preferences
– Suggested AirPlay device connections are proactively shown to you as a notification to make it even more seamless to connect to your preferred AirPlay devices
– Automatic AirPlay device connections are made between your iPhone and the most relevant AirPlay-compatible device so all you have to do is tap “Play” to begin enjoying your content

AirPods
– Adaptive Audio delivers a new listening mode that dynamically blends Active Noise Cancellation and Transparency to tailor the noise control experience based on the conditions of your environment (AirPods Pro (2nd generation) with firmware version 6A300 or later)
– Personalized Volume adjusts the volume of your media in response to your environment and listening preferences over time (AirPods Pro (2nd generation) with firmware version 6A300 or later)
– Conversation Awareness lowers your media volume and enhances the voices of the people in front of the user, all while reducing background noise (AirPods Pro (2nd generation) with firmware version 6A300 or later)
– Press to mute and unmute your microphone by pressing the AirPods stem or the Digital Crown on AirPods Max when on a call (AirPods (3rd generation), AirPods Pro (1st and 2nd generation), or AirPods Max with firmware version 6A300 or later)

Maps
– Offline Maps allow you to select an area you want to access, search, and explore rich information for places to download for use when your iPhone doesn’t have a Wi-Fi or cellular signal
– EV routing improvements give you routes based on real-time EV charger availability for supported chargers

Siri
– Option to say “Siri” in addition to “Hey Siri” for an even more natural way to make requests
– Back-to-back requests can be issued without needing to reactivate Siri in between commands (iPhone 11 and later)

Visual Look Up
– Expanded domains in Visual Look Up help you discover similar recipes from photos of food, Maps information from photos of storefronts, and the meaning of signs and symbols on things like laundry tags
– Multiple or single subjects can be lifted from the background of photos and videos and placed into apps like Messages
– Visual Look Up in Video helps you learn about objects that appear in paused video frames
– Visual Look Up for subjects in photos enables you to look up information about objects you lift from photos directly from the callout bar

Health
– State of Mind reflection allows you to log your momentary emotion and daily mood, choose what factors are having the biggest impact on you, and describe your feelings
– Interactive charts give you insights into your state of mind, how it has changed over time, and what factors may have influence such as exercise, sleep, and mindful minutes
– Mental health assessments help you understand your current risk for depression and anxiety and if you might benefit from getting support
– Screen Distance leverages the TrueDepth camera that powers Face ID to encourage you to increase the distance you view your device to reduce digital eye strain and can help reduce the risk of myopia in children

Privacy
– Sensitive Content Warnings can be enabled to prevent users from unexpectedly being shown images containing nudity in Messages, AirDrop, Contact Posters in the Phone app, and FaceTime messages
– Expanded Communication Safety protections for children now detect videos containing nudity in addition to photos that children may receive or attempt to send in Messages, AirDrop, Contact Posters in the Phone app, FaceTime messages, and the system Photo picker
– Improved sharing permissions give you even more control over what you share with apps, with an embedded photo picker and an add-only Calendar permission
– Link tracking protection removes extra information from links shared in Messages, Mail, and Safari Private Browsing that some websites use in their URLs to track you across other websites, and links still work as expected

Accessibility
– Assistive Access distills apps and experiences to their essential features in Phone and FaceTime, Messages, Camera, Photos, and Music, including large text, visual alternatives, and focused choices to lighten cognitive load
– Live Speech lets you type what you want to say and have it be spoken out loud in phone calls, FaceTime calls, and for in-person conversations
– Personal Voice enables users who are at risk of losing their voice to privately and securely create a voice that sounds like them on iPhone, and use it with Live Speech in phone and FaceTime calls
– Point and Speak in Magnifier Detection Mode uses iPhone to read text out loud on physical objects with small text labels, such as keypads on doors and buttons on appliances

This release also includes other features and improvements:
– Roadside Assistance via satellite lets you contact AAA to help you with vehicle issues when out of Wi-Fi or cellular range (iPhone 14, iPhone 14 Plus, iPhone 14 Pro, iPhone 14 Pro Max)
– Pets in the People album in Photos surfaces individual pets in the album just like friends or family members
– Photos Album widget lets you select a specific album from the Photos app to appear in the widget
– Item sharing in Find My allows you to share an AirTag or Find My network accessory with up to five other people
– Activity History in Home displays a recent history of events for door locks, garage doors, security systems, and contact sensors
– Grid Forecast in Home shows when your electrical grid has cleaner energy sources available (Contiguous US only)
– Grocery Lists in Reminders automatically group related items into sections as you add them
– Inline PDFs and document scans in Notes are presented full-width, making them easy to view and mark them up
– New Memoji stickers in Keyboard include Halo, Smirk, and Peekaboo
– App Shortcuts in Spotlight Top Hit offer you app shortcuts to your next action when you search for an app
– Redesigned Sharing tab in Fitness provides highlights of your friends’ activity like workout streaks and awards
– Email or phone number sign-in lets you sign into your iPhone with any email address or phone number listed in your Apple ID account
– New drawing tools in Freeform include a fountain pen, watercolor brush, ruler and more to create expressive boards
– Crash Detection optimizations (iPhone 14, iPhone 14 Plus, iPhone 14 Pro, iPhone 14 Pro Max)

 

728x90x4

Source link

Continue Reading

Tech

Unity Overhauls Controversial Price Hike After Game Developers Revolt

Published

 on

(Bloomberg) — Video-game tool maker Unity Software Inc. said Monday it’s backtracking on major aspects of a controversial new price hike, telling staff in an all-hands meeting that it’s now considering changes including a cap on potential fees.

Unity, which operates and licenses a suite of video-game development tools called the Unity Engine, set off a firestorm last week when it announced plans to charge customers for every new installation of their game after a certain threshold. The decision triggered widespread protests, leading several video-game makers to say they would boycott Unity until the policy is changed.

Under the tentative new plan, Unity will limit fees to 4% of a game’s revenue for customers making over $1 million and said that installations counted toward reaching the threshold won’t be retroactive, according to recording of the meeting reviewed by Bloomberg. Last week, Chief Executive Officer John Riccitiello delayed an all-hands meeting on the pricing changes and closed two offices after the company received what it said was a credible death threat.

The company apologized to customers on Sunday and said it would be making changes to the pricing policy.

300x250x1

Marc Whitten, a Unity executive, said the company hasn’t yet announced the latest changes because executives are still running them by partners and don’t want to repeat last week’s communications debacle, which led to several clarifications.

One of the most controversial elements of the policy concerned how Unity would track installations of its software. Although the company first said it would use proprietary tools, Whitten said Monday management will rely on users to self-report the data.

In the meeting, Riccitiello emphasized that the new policy is designed to generate more revenue from the company’s biggest customers and that more than 90% of Unity users won’t be affected. Several employees asked during the meeting how Unity would bounce back from what appeared to be a breach of trust. Executives said the company will have to “show, not tell” and handle future communications more carefully.

“I don’t think there’s any version of this that would have gone down a whole lot differently than what happened,” Riccitiello said. “It is a massively transformational change to our business model.”

But, he acknowledged, “I think we could have done a lot of things a lot better.”

728x90x4

Source link

Continue Reading

Trending